Oracle19c on 银河麒麟的安装与升级


下载内容

preinstall  CentOS8
https://yum.oracle.com/repo/OracleLinux/OL8/appstream/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el8.x86_64.rpm preinstall CentOS7
https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm 下载Oracle安装软件:
https://download.oracle.com/otn/linux/oracle19c/190000/oracle-database-ee-19c-1.0-1.x86_64.rpm
注意数据库的安装软件需要登录权限才可以. 下载补丁集合
需要注意 2023.12.29 已经到了 oracle 19.21.0.0
下载需要MOS账号, 自己注册的账号无法下载这样的补丁集合 需要说明的第二点是:
Oracle会将过往的12个月之前的补丁集合设置为密码保护, 不允许下载
如果下载需要提交 SR 但是提交SR 必须关联 MOS账号对应的购买序列号和服务的产品信息
所以基本上很难处理好. 还需要注意, 需要升级 opatch的补丁包 下载路径是:
https://updates.oracle.com/download/6880880.html

系统初始化

之前总结过 这次直接拿来用
cat > /etc/redhat-release <<EOF
CentOS Linux release 8.0
EOF 然后执行:
rpm -ivh oracle-database-preinstall-19c-1.0-1.el8.x86_64.rpm --nodeps --force 安装必备的一些软件:
yum install ksh* libnsl* -y

安装软件

time rpm -ivh oracle-database-ee-19c-1.0-1.x86_64.rpm

注意这个安装比较耗时, 我这边的时间为 接近 6min.

初始化数据库

vim /etc/init.d/oracledb_ORCLCDB-19c
# 修改部分内容如下:
export ORACLE_VERSION=19C
export ORACLE_SID=ORA19C
export TEMPLATE_NAME=General_Purpose.dbc
export CHARSET=ZHS16GBK
export PDB_NAME=ORA19CPDB
export LISTENER_NAME=LISTENER
export NUMBER_OF_PDBS=1
export CREATE_AS_CDB=true cd /etc/sysconfig/
scp oracledb_ORCLCDB-19c.conf oracledb_ORA19C-19C.conf

创建部分目录

chown  -R   oracle:oinstall   /opt/oracle
mkdir -p /opt/oracle/product/19c/dbhome_1
mkdir -p /opt/app/oracle/oradata/
mkdir /opt/oracle/oraInventory
touch /etc/oratab
chown oracle:oinstall /etc/oratab

初始化数据库

/etc/init.d/oracledb_ORCLCDB-19c configure

修改环境变量

cat >/etc/profile.d/oracle.sh <<EOF
export ORACLE_SID=ORA19C
export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export PATH=$PATH:/opt/oracle/product/19c/dbhome_1/bin
export NLS_LANG="AMERICAN_AMERICA.UTF8"
EOF

部分设置

alter profile default limit FAILED_LOGIN_ATTEMPTS unlimited ;
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED; CREATE TRIGGER open_all_pdbs
AFTER STARTUP ON DATABASE
BEGIN
EXECUTE IMMEDIATE 'alter pluggable database all open';
END open_all_pdbs;
/

升级最新版本的补丁包

需要使用 oracle 的MOS账号 上Oracle官网下载最新补丁包
2023.12.31时最新的补丁包是
p35643107_190000_Linux-x86-64.zip
他的版本号是 19.21.0.0 需要现将文件上传上去.
并且执行解压缩

升级步骤-第一步关闭数据库

1. 关闭数据库软件
su - oracle
sqlplus / as sysdba <<EOS
shutdown immediate
EOS lsnrctl stop

升级步骤-第二步备份应用

su - oracle
echo $ORACLE_HOME
exit
mkdir /opt/oracle19.3rpmonly
chown oracle:oinstall /opt/oracle19.3rpmonly
su - oracle
cd /opt time tar -czvf oracle19.3rpmonly/oraclebackup.tar.gz oracle

升级步骤-第三步替换opatch目录并验证

# root用户
scp -r 35643107/* /opt/oracle/product/19c/dbhome_1/OPatch/
cd /opt/oracle/product/19c/dbhome_1
chown oracle:oinstall OPatch -R
su - oracle
cd /opt/oracle/product/19c/dbhome_1/OPatch/
./opatch lsinventory -detail -oh $ORACLE_HOME 提示: -------------------------------------------------------------------------------- OPatch succeeded. 基本上就可以了, 注意磁盘空间尽量保持20G以上. 需要注意 还需要升级 opatch的版本 可以理解为 补丁包是升级Oracle的 opatch的包是升级打补丁工具的.
下载地址就是第一部分里面讲解的:https://updates.oracle.com/download/6880880.html
需要注意这个路径很固定, 需要选择不同的版本和安装包进行使用.

升级步骤-第四步执行升级

第一部分:
应用升级
su - oracle
cd /opt/oracle/product/19c/dbhome_1/OPatch/
./opatch apply
注意升级时间可能会比较长, 需要等待.
中间会有两次要求输入选项的的步骤, 选择 y 后继续下一步的操作. 正在将临时补丁程序 '35643107' 应用于 OH '/opt/oracle/product/19c/dbhome_1'
中间会提示很多组件的信息. 注意如果是Oracle19.3 的rpm包安装的版本, 不升级OPatch的话 会报错为:
The OPatch being used has version 12.2.0.1.17 while the following patch(es) require higher versions:
Patch 35643107 requires OPatch version 12.2.0.1.37. 我这边大概耗时 7min 完成. 第二部分:
升级数据库
lsnrctl start 打开监听
sqlplus / as sysdba 链接数据库
已经可以看到数据库版本发生了变化: SQL*Plus: Release 19.0.0.0.0 - Production on Sun Dec 31 11:01:41 2023
Version 19.21.0.0.0 startup 数据库 查看 show pdbs 都是正常状态
然后执行升级数据库的脚本
time ./datapatch -verbose 注意需要先打开数据库 再升级.
注意我这边没有任何自己创建的数据库实例, 数据14min完成升级. 升级成功后:
需要编译一下无效对象
cd $ORACLE_HOME/rdbms/admin/
sqlplus / as sysdba <<EOS
@utlrp.sql
EOS 查看一下数据库的版本升级情况:
select patch_id, action,status,action_time,description from dba_registry_sqlpatch; 29-DEC-23 06.24.48.466705 PM Database Release Update : 19.3.0.0.190416 (29517242) 31-DEC-23 11.16.38.351972 AM Database Release Update : 19.21.0.0.231017 (35643107) 可以看到我数据库的安装时间和 数据库的版本时间. 可以看到 oracle19c 其实是四年半之前的版本了 20190416
生产环境还时很建议要升级一下版本的.

最后

建议重启一下应用和数据库, 保证产品正常.
su - oracle sqlplus / as sysdba <<EOS
shutdown immediate
EOS
lsnrctl stop
sqlplus / as sysdba <<EOS
startup
EOS
lsnrctl start
sqlplus / as sysdba <<EOS
alter system register ;
EOS
lsnrctl status

Oracle19c on 银河麒麟的安装与升级的更多相关文章

  1. ubuntukylin16.04LTS(乌班图麒麟版长期支持版,并非银河麒麟)安装体验

    最近,国产银河麒麟版在政府部门推广使用.我有幸接触了,感觉还是不错的.这次政府软件正版化整改中,也列入了windows和银河麒麟的选项.我想试安装一下,可是没找到.就近找了它的类似系统ubuntuky ...

  2. 银河麒麟V10安装ASP.NET Core并配置Supervisor让网站开机自动运行

    银河麒麟高级服务器操作系统V10是针对企业级关键业务,适应虚拟化.云计算.大数据.工业互联网时代对主机系统可靠性.安全性.性能.扩展性和实时性的需求,依据CMMI 5级标准研制的提供内生安全.云原生支 ...

  3. 银河麒麟v4_sp4安装英伟达驱动

    bios设置视频输出为auto模式 视频线插独立显卡上 先dpkg 安装两个deb包 1.禁用开源驱动:sudo vim /etc/modprobe.d/blacklist.conf,在里面添加 bl ...

  4. 银河麒麟V10安装MySQL5.7

      环境: Kylin-Server-10-SP2-Release-Build09-20210524-x86_64.isomysql-5.7.28-linux-glibc2.12-x86_64.tar ...

  5. 国产银河麒麟 安装wps 的简单方法

    前提说明 银河麒麟 是总部在天津的企业 有国防科大还有 ubuntu的母公司一起在维护 主要的产品有 优麒麟 还有 银河麒麟 优麒麟 可以看做是 国产版的ubuntu的社区版 银河麒麟 则是 面向国内 ...

  6. 国产化之虚拟ARM64-CPU安装银河麒麟操作系统

    背景 某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟v4,CPU使用飞腾处理器.我本地没有这个国产的处理器,但飞腾是基于ARMv8架构的64位处理器,所以理论上基于这个CPU架构的硬件应 ...

  7. 国产化之银河麒麟安装达梦数据库DM8

    背景 某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟,数据库使用DM8. 虽然在之前的文章中已经成功模拟国产飞腾处理器,但是运行效率不高,所以这里的银河麒麟操作系统还是运行在x64平台上 ...

  8. 国产化之银河麒麟安装.NetCore-包管理器方式

    背景 某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟,数据库使用达梦V8,CPU平台的范围包括x64.龙芯.飞腾.鲲鹏等. 考虑到这些基础产品对.NETCore的支持,最终选择了3.1版 ...

  9. 初学银河麒麟linux笔记 第九章 QEMU安装arm虚拟机

    arm虚拟机无法用vm进行安装,因此需要安装QEMU虚拟机 参考: WIndows下使用Qemu安装Arm版Kylin系统_h1007886499的博客-CSDN博客_windows qemu arm ...

  10. 初学银河麒麟linux笔记 第一章 虚拟机、麒麟系统、QT安装与运行

    由于手头一个项目的QT软件开发需要在银河麒麟系统上运行,借此机会开始从头学习linux系统 首先下载虚拟机VMware 16和麒麟系统iso,这里参考的 https://blog.51cto.com/ ...

随机推荐

  1. 从零玩转人脸识别验证-face

    title: 从零玩转人脸识别验证 date: 2022-05-15 21:05:52.974 updated: 2023-05-16 00:00:11.594 url: https://www.yb ...

  2. MySQL篇:第六章_详解mysql视图

    周末有朋友来上海没来得及更新,特此更两篇以正身 视图 含义:理解成一张虚拟的表 视图和表的区别: 使用方式 占用物理空间 视图 完全相同 不占用,仅仅保存的是sql逻辑 表 完全相同 占用 视图的好处 ...

  3. 第四部分_Shell脚本数组和其他变量

    数组定义 ㈠ 数组分类 普通数组:只能使用整数作为数组索引(元素的下标) 关联数组:可以使用字符串作为数组索引(元素的下标) ㈡ 普通数组定义 可以切片 一次赋予一个值 #数组名[索引下标]=值 ar ...

  4. 1024 | 9位开发者分享生涯“最”时刻,文武状元大PK等你来

    本文分享自华为云社区<1024程序员节,和华为云一起做不被定义的开发者>,作者:华为云社区精选 . 1024,祝所有开发者们节日快乐 "代码有注释,程序无bug, 需求不改动,永 ...

  5. 华为云GaussDB践行数字化,护航证券保险高质量发展

    摘要:华为云数据库解决方案架构师章哲在由先进数通与华为联合开展的"7+1"系列银行业数字化转型实践交流活动上围绕华为云GaussDB多年来的技术探索和应用实践进行了分享. 近日,由 ...

  6. 开发老人笔记:Git 常用命令清单

    摘要:git是目前世界上最先进的分布式版本控制系统. 多人协作 master:此分支用来发布稳定的代码,合并一般是由管理员合并 dev:此分支用于团队开发,团队成员向此分支提交代码 bug:此分支用于 ...

  7. 云小课 | 大数据融合分析:GaussDW(DWS)轻松导入MRS-Hive数据源

    摘要:通过建立GaussDB(DWS)与MRS的连接,支持数据仓库服务SQL on Hadoop,以外表方式实现Hive数据的快捷导入,满足大数据融合分析的应用场景. 本文分享自华为云社区<[云 ...

  8. Preload与Prefetch的区别以及webpack项目中如何优化

    preload 与prefetch 的区别 preload 是一个声明式 fetch,可以强制浏览器在不阻塞 document 的 onload 事件的情况下请求资源. preload 顾名思义就是一 ...

  9. JS 判断域名并跳转到指定页面

    判断访问指定域名,进行页面跳转 <!DOCTYPE html> <html> <head> <title>正在玩命加载中--</title> ...

  10. Spring Boot Admin 自定义健康检查

    添加自定义类: /** * 监控接口的健康情况 * */ @Component public class ApiHealthIndicator implements HealthIndicator { ...