一、安装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的过程