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;
相关推荐
hef2884 小时前
如何生成特定SQL的AWR报告_@awrsqrpt.sql深度剖析单条语句性能
jvm·数据库·python
xcjbqd05 小时前
Python API怎么加Token认证_JWT生成与验证拦截器实现
jvm·数据库·python
二月十六6 小时前
SQL Server 2022 新语法:IS [NOT] DISTINCT FROM 彻底解决 NULL 比较难题
数据库·sqlserver
~ rainbow~6 小时前
前端转型全栈(四)——常见的错误及解决方案
数据库·oracle·全栈
数厘6 小时前
2.1SQL 学习:先懂数据库概念再学 SQL
数据库·sql·学习
Cat_Rocky6 小时前
redis哨兵模式
数据库·redis
广师大-Wzx6 小时前
一篇文章看懂MySQL数据库(下)
java·开发语言·数据结构·数据库·windows·python·mysql
hef2887 小时前
golang如何使用range over func_golang range over func迭代器使用方法
jvm·数据库·python
qq_380619168 小时前
html如何查看windows
jvm·数据库·python
爱学习的小邓同学8 小时前
MySQL --- MySQL数据库基础
数据库·mysql