硬件及OS相关信息:

操作系统

RHEL 7.6(x86_64)

CPUS

8

内存

16GB

硬盘容量

200GB

 

数据库相关信息:

源数据库版本

11.2.0.4

ORACLE_HOME(源)

/u01/app/oracle/product/11.2.0.4/db_1

目标数据库版本

19.5.0.0

ORACLE_HOME(目)

/u01/app/oracle/product/19.0.0/db_1

数据库名

orcl

 

升级方式:采用命令行方式,在源主机上,直接升级数据库版本。

升级关键步骤:
1)先将11.2.0.4升级到19.3.0.0

2)在19.3.0.0基础上,进行RU升级(p30125133),最终将版本升级到19.5.0.0

 

升级前准备:

1)19.3安装准备

 

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_oracle

2)安装Oracle 19.3

 

./runInstall –i gnore Prereq –waitforcompletion –silent –responseFile ${ORACLE_HOME}/install/respa

 

1)通过RMAN进行全备

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_upgrade_02

2)查询是否还有备份作业 

SQL> select * from v$backup where status!='NOT ACTIVE';

 3)清空回收站

>purge dba_recyclebin;

4)收集数据字典信息

>exec dbms_stats.gather_dirctionary_stats;

5)生成预升级检查脚本

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_upgrade_03

6)执行preupgrade_fixups.sql脚本

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_数据库_04

关闭数据库

SQL >shutdown immediate;

 

7)拷贝orapworcl和spfileorcl.ora文件到目标库对应目录

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_oracle_05

 

以下操作均在目标版本19.3上操作:

1)更改oracle用户的环境变量ORACLE_HOME路径,并使用环境变量生效。

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_upgrade_06

2)启动数据库,以upgrade模式打开。

>alter database open upgrade;

3)运行编目控制程序(-n代表并行度)

$perl/bin/perl catctl.pl –n 4 catupgrd.sql

 4)启动数据库,执行postupgrade_fixups.sql脚本。

>@/u02/pregrade/postupgrade_fixups.sql

5)检查时区相关问题

Select version from v$timezone_file;

 version

14

6)修复时区相关问题

 @/u02/pregrade/postupgrade_fixups.sql

7)再次检查时区信息

Select version from v$timezone_file;

 version

32

8)编译无效对象

@/rdbms/admin/utlrp.sql 

9)查看参数compatible,并修正为19.0.0

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_upgrade_07

10)关闭并重启数据库,检查参数及版本等。

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_upgrade_08

11)核对软件升级后的业务数据。

 至此,我们已经成功将oracle 11.2.0.4版本升级到19.3。 

以下是将19.3版本升级到19.5版本。

1)解压补丁包。

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_oracle_09

2)备份ORACLE_HOME

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_oracle_10

3)关闭数据库和监听

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_upgrade_11

 4)先决条件检查

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_数据库_12

5)开始打补丁

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_oracle_13

6)启动监听和数据库

$lsnrctl start 

7)列出特定ORACLE_HOME的库存或显示所有可以找到的安装。

./opatch lsinv

8)编译无效对象

linux 平台下:oracle 11.2.0.4 手工命令行方式 升级19.5 非PDB;_upgrade_14