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;
相关推荐
likuolei2 分钟前
Git 工作区、暂存区和版本库
数据库·git
此生只爱蛋16 分钟前
【Redis】服务端高并发分布式结构演进之路
数据库·redis·分布式
纪莫22 分钟前
技术面:MySQL(一条SQL在MySQL的执行过程?、MyISAM和InnoDB的区别?数据库事务机制?)
java·数据库·java面试⑧股
妮妮喔妮40 分钟前
MYSQL赋予root用户ALTER权限
数据库·mysql
Elastic 中国社区官方博客1 小时前
开始使用 Elastic Agent Builder 和 Microsoft Agent Framework
数据库·人工智能·elasticsearch·microsoft·搜索引擎·ai·全文检索
倔强的石头_1 小时前
关键信息基础设施的数据库选型:高可用、全链路安全与平滑替代的技术实践
数据库
q***48312 小时前
数据库操作与数据管理——Rust 与 SQLite 的集成
数据库·rust·sqlite
是垚不是土3 小时前
运维新人踩坑记录:Redis与MySQL生产故障排查&优化手册
运维·数据库·redis·mysql·云计算·bootstrap
deng-c-f3 小时前
配置(9):在ubuntu上生成core文件
数据库·windows·ubuntu
野生技术架构师3 小时前
数据库连接池爆满如何排查
网络·数据库·oracle