Oracle19C单实例补丁升级

本文详细描述了如何在Oracle19.14.0.0.0版本基础上,通过上传和应用不同补丁包(如database,OCW和OJVM)进行升级至19.20.0.0.0的过程,包括备份、解压、预检查、关闭数据库、打补丁、检查补丁信息以及回退和注册操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.说明

初始版本:19.14.0.0.0

升级后版本为19.20.0.0.0

操作系统:Linux-x86-64

补丁包:

p35319490_190000_Linux-x86-64.zip

注意:因为是单实例,只打database [35320081] 和 OCW [35320149]

p35354406_190000_Linux-x86-64.zip OJVM补丁包

查看当前补丁号,没有OJVM可不打($ORACLE_HOME/OPatch/opatch lspatches)

p6880880_190000_Linux-x86-64.zip

有mos账号者,可按照下图方式搜索补丁号下载补丁包

2.升级补丁包

(若无特殊说明,以下步骤在Oracle用户执行)

    1.备份目录

tar -cvf /home/oracle/oracle_home.tar $ORACLE_HOME

     2.上传补丁包到Oracle用户并解压

oracle@orcl1:/home/oracle>ls(目录根据实际情况替换)

p35319490_190000_Linux-x86-64.zip

p35354406_190000_Linux-x86-64.zip

p6880880_190000_Linux-x86-64.zip

oracle@orcl1:/home/oracle> unzip p6880880_190000_Linux-x86-64.zip -d $ORACLE_HOME

选择A

oracle@orcl1:/home/oracle>unzip p35319490_190000_Linux-x86-64.zip

oracle@orcl1:/home/oracle>unzip p35354406_190000_Linux-x86-64.zip

    3.预检查

oracle@orcl1:/home/oracle/35319490/35320081>opatch prereq CheckConflictAgainstOHWithDetail -ph ./

oracle@orcl1:/home/oracle/35319490/35320149>opatch prereq CheckConflictAgainstOHWithDetail -ph ./

oracle@orcl1:/home/oracle/35354406>opatch prereq CheckConflictAgainstOHWithDetail -ph ./

最后显示OPatch succeeded

4.关闭数据库 (多实例数据库需要将所有实例一同关闭)

oracle@orcl1:/home/oracle> sqlplus / as sysdba
SQL>shut immediate
Database closed.
Database dismounted.
ORACLE INSTANCE SHUT DOWN.
SQL>exit

 5.打数据库补丁

oracle@orcl1:/home/oracle> cd 35319490/35320081

oracle@orcl1:/home/oracle/35319490/35320081>opatch apply

......

Verifying environment and performing pererquisite checks...

OPatch continues with these pathes :35320081

是否继续[y|n]

y

User Responded with:Y

ALL checks passed.



请关闭本地系统上在此ORACLE_HOME之外运行的Oracle实例。

(Oracle 主目录=’/$ORACLE_HOME’)

本地系统是否以准备打补丁?[y|n]

y

User Responded with:Y

 6.打OCW补丁

oracle@orcl1:/home/oracle> cd 35319490/35320149

oracle@orcl1:/home/oracle/35319490/35320149>opatch apply

......

Verifying environment and performing pererquisite checks...

OPatch continues with these pathes :35320149

是否继续[y|n]

y

User Responded with:Y

ALL checks passed.



请关闭本地系统上在此ORACLE_HOME之外运行的Oracle实例。

(Oracle 主目录=’/$ORACLE_HOME’)

本地系统是否以准备打补丁?[y|n]

y

User Responded with:Y

 7.打OJVM补丁

oracle@orcl1:/home/oracle> cd 35354406

oracle@orcl1:/home/oracle/35354406>opatch apply

......

Verifying environment and performing pererquisite checks...

OPatch continues with these pathes :35354406

是否继续[y|n]

y

User Responded with:Y

ALL checks passed.



请关闭本地系统上在此ORACLE_HOME之外运行的Oracle实例。

(Oracle 主目录=’/$ORACLE_HOME’)

本地系统是否以准备打补丁?[y|n]

y

User Responded with:Y

 8.检查补丁信息

oracle@orcl1:/home/oracle/35354406> opatch lspatches

35320149:OCW RELEASE UPDATE 19.20.0.0.0(35320149)

35320081:Database Release Update :19.20.0.0.230718(35320081)

35354406:OJVM RELEASE UPDATE 19.20.0.0.0(35354406)



OPatch succeeded.

9.启动数据库

oracle@orcl1:/home/oracle> sqlplus / as sysdba

Connected to an idle instance.

SQL> startup

ORACLE instance started.

SQL> exit

 10.注册补丁信息

oracle@orcl1:/home/oracle> cd $ORACLE_HOME/OPatch

oracle@orcl1:/u01/app/oracle/product/19.0.0/db/OPatch> ./datapatch -verbose

 11.检查补丁注册信息

oracle@orcl1:/home/oracle> sqlplus / as sysdba

SQL> select PATCH_ID,ACTION,STATUS,ACTION_TIME,DESCRIPTION from dba_registry_sqlpatch;

12.启动监听

lsnrctl status

lsnrctl start

3.回退

1.关闭数据库

oracle@orcl1:/home/oracle> sqlplus / as sysdba
SQL>shut immediate
Database closed.
Database dismounted.
ORACLE INSTANCE SHUT DOWN.
SQL>exit

 2.回退

opatch rollback -id 35320081

opatch rollback -id 35320149

opatch rollback -id 35354406

 3.重新注册补丁信息

cp /home/oracle/oracle_home/OPatch -d $ORACLE_HOME
cd $ORACLE_HOME/OPatch
sqlplus / as sysdba
SQL>startup
./datapath -verbose

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值