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;
相关推荐
jianqimingtian9 分钟前
如何使用 Matlab 制作 GrabCAD 体素打印切片
数据结构·数据库
真真假假々14 分钟前
MySQL和ADSDB
数据库·mysql
秦老师Q15 分钟前
MySQL第二章 sql约束与sql数据类型
数据库·sql·mysql
不是二师兄的八戒19 分钟前
mysql in查询大数据量业务无法避免情境下优化
数据库·mysql
----云烟----33 分钟前
Qt获取文件夹下的文件个数(过滤和不过滤的区别)
数据库·qt
Dotrust东信创智33 分钟前
浅谈丨功能安全测试,汽车的守护者
运维·服务器·数据库
清水白石0082 小时前
从一个“支付状态不一致“的bug,看大型分布式系统的“隐藏杀机“
java·数据库·bug
Python私教6 小时前
model中能定义字段声明不存储到数据库吗
数据库·oracle
BestandW1shEs9 小时前
谈谈Mysql的常见基础问题
数据库·mysql
重生之Java开发工程师9 小时前
MySQL中的CAST类型转换函数
数据库·sql·mysql