oracle补丁升级(19.3-19.22)

一、备份原来的opatch和数据库文件

这里要根据自己的路径:

复制代码
mv /u01/app/oracle/product/19.3.0/db_1/OPatch /u01/app/oracle/product/19.3.0/db_1/OPatch.bak


cd /u01/app
mkdir -p /u01/app/backup
tar -pcvf /u01/app/backup/oracle_backup.tar /u01/app/oracle/

二、替换高版本opatch

1.解压p6880880_190000_Linux-x86-64.zip

复制代码
 unzip p6880880_190000_Linux-x86-64.zip -d $ORACLE_HOME

2.修改文件权限

复制代码
chmod -R 755 /u01/app/oracle/product/19.3.0/db_1/OPatch 

chown oracle:oinstall /u01/app/oracle/product/19.3.0/db_1/OPatch 

3.查看现在opatch版本

复制代码
cd $ORACLE_HOME/OPatch
./opatch version

4.列出安装在$ORACLE_HOME目录下的所有Oracle补丁的详细信息

复制代码
 $ORACLE_HOME/OPatch/opatch lsinventory -detail -oh $ORACLE_HOME

三、关闭数据库实例和监听

1.关闭数据库实例

复制代码
sqlplus / as sysdba
shutdown immediate
exit

2.关闭监听

复制代码
 lsnrctl stop
 lsnrctl status

四、 解压补丁

1.解压p33515361_190000_Linux-x86-64.zip

复制代码
cd /soft
unzip p35943157_190000_Linux-x86-64.zip -d $ORACLE_HOME

2.查看解压后的文件

复制代码
cd $ORACLE_HOME
cd 35943157

可以查看README文档和网页来了解详情

3.给文件授权

复制代码
chmod -R 755 /u01/app/oracle/product/19.3.0/db_1/35943157
chown -R oracle:oinstall /u01/app/oracle/product/19.3.0/db_1/35943157

4.冲突检测

复制代码
cd $ORACLE_HOME/35943157
$ORACLE_HOME/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./

5.补丁空间检查

复制代码
cd /soft
vim OPatch_inspt
/soft/p35943157_190000_Linux-x86-64.zip
$ORACLE_HOME/OPatch/opatch prereq CheckSystemSpace -phBaseFile /soft/OPatch_inspt

这就通过了

如果此时提示空间不足可以跟给跟目录扩容

可以参考这里Redhat 扩展/root目录下的磁盘容量_redhat扩展根目录空间-CSDN博客

6. 执行补丁升级

复制代码
cd $ORACLE_HOME/35943157
$ORACLE_HOME/OPatch/opatch apply

7.将更新内容加载到数据库

复制代码
lsnrctl start 
sqlplus / as sysdba
startup

将更新的东西加载到数据库

复制代码
cd $ORACLE_HOME/OPatch
./datapatch -verbose

8.查看更新是否成功

复制代码
sqlplus / as sysdba
column product format A30
column version format A15
column version_full format A20
column status format A15
select * from product_component_version;

此时成功

五、卸载补丁更新

这里也要关闭数据库实例和监听

复制代码
$ORACLE_HOME/OPatch/opatch rollback -id 35943157

sqlplus / as sysdba
column product format A30
column version format A15
column version_full format A20
column status format A15
select * from product_component_version;
相关推荐
NineData11 小时前
NineData 迁移评估功能正式上线
数据库·dba
NineData17 小时前
数据库迁移总踩坑?用 NineData 迁移评估,提前识别所有兼容性风险
数据库·程序员·云计算
赵渝强老师19 小时前
【赵渝强老师】PostgreSQL中表的碎片
数据库·postgresql
全栈老石1 天前
拆解低代码引擎核心:元数据驱动的"万能表"架构
数据库·低代码
倔强的石头_2 天前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
jiayou643 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
李广坤4 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
爱可生开源社区5 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸1775 天前
《从零搭建NestJS项目》
数据库·typescript
加号36 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql