一、安装19c软件
参考文章oracle12c到19c adg搭建(三)oracle19c数据库软件安装
二、原主库尝试通过19c软件启动数据库
2.1复制12c的相关参数文件和密码文件到19c目录
注意:密码文件需要从已切换主库19c传过来
[oracle@o12u19p ~]$ cd /u01/app/oracle/product/12.1.0.2/dbhome_1/dbs/
[oracle@o12u19p dbs]$ ls
hc_orcl.dat init.ora initorcl.ora lkORCL orapworcl snapcf_orcl.f spfileorcl.ora
[oracle@o12u19p dbs]$ cp * /u01/app/oracle/product/19.3.0.0/dbhome_1/dbs/
[oracle@o12u19p dbs]$ cd /u01/app/oracle/product/19.3.0.0/dbhome_1/dbs/
[oracle@o12u19p dbs]$ ls
hc_orcl.dat init.ora initorcl.ora lkORCL orapworcl snapcf_orcl.f spfileorcl.ora
[oracle@o12u19p dbs]$
2.2主库生成控制文件
SQL> ALTER DATABASE CREATE standby controlfile AS '/backup/orcl.ctl';
Database altered.
[oracle@o12u19s backup]$ scp orcl.ctl oracle@o12u19p:/backup
2.3恢复控制文件
[oracle@o12u19p backup]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Jun 19 10:02:39 2024
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount
ORACLE instance started.
Total System Global Area 6174013840 bytes
Fixed Size 9148816 bytes
Variable Size 1056964608 bytes
Database Buffers 5100273664 bytes
Redo Buffers 7626752 bytes
SQL>
RMAN> restore controlfile from'/backup/orcl.ctl';
Starting restore at 19-JUN-24
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=21 device type=DISK
channel ORA_DISK_1: copied control file copy
output file name=/u01/app/oracle/oradata/orcl/control01.ctl
output file name=/u01/app/oracle/fast_recovery_area/orcl/control02.ctl
Finished restore at 19-JUN-24
RMAN>
2.4复制12c监听文件到19c目录下并启动监听文件
[oracle@o12u19p admin]$ cd /u01/app/oracle/product/12.1.0.2/dbhome_1/network/admin/
[oracle@o12u19p admin]$ scp * /u01/app/oracle/product/19.3.0.0/dbhome_1/network/admin/
cp: omitting directory ‘samples’
[oracle@o12u19p admin]$ ls
listener.ora samples shrept.lst sqlnet.ora tnsnames.ora
[oracle@o12u19p admin]$ lsnrclt start
bash: lsnrclt: command not found...
[oracle@o12u19p admin]$ lsnrctl start
2.5备库开库
[oracle@o12u19p admin]$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Jun 19 10:29:44 2024
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL> alter database open
2 ;
报错:
由于控制文件的scn和数据文件的scn差异过大导致
2.6尝试从主库拷贝一些日志到备库 备库尝试日志应用
[oracle@o12u19s backup]$ cd /u01/app/oracle/oradata/
[oracle@o12u19s oradata]$ ls
orcl orcldg
[oracle@o12u19s oradata]$ cd orcldg/
[oracle@o12u19s orcldg]$ ls
arch pdb1 pdbseed sysaux01.dbf system01.dbf temp01.dbf undotbs01.dbf users01.dbf
[oracle@o12u19s orcldg]$ cd arch/
[oracle@o12u19s arch]$ ls
备库日志到1-27
主库从1-28开始拷贝
[oracle@o12u19s arch]$ scp 1_28_1171969607.dbf 1_28_1171991791.dbf 1_29_1171991791.dbf 1_30_1171991791.dbf 1_31_1171991791.dbf oracle@o12u19p:/u01/app/oracle/oradata/orcl/arch
2.7开启日志应用
alter database recover managed standby database using current logfile disconnect from session;
2.8主备库打开pdb
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB1 MOUNTED
SQL> alter pluggable database pdb1 open;
Pluggable database altered.
三、主备库同步检查
主库查看seq
SQL> select sequence#,applied from v$archived_log order by sequence# asc;
备库查看seq
可以看到备库已经开始同步主库的日志从283开始。
至此我们完成了12c到19cadg的搭建及12c滚动升级到19c的过程