[Oracle Cloud] DBCS간에 PDB 핫클론으로 PDB(12c)를 Oracle19c로 업그레이드해 보았다.
소개
Pluggable Database의 핫 클론 기능을 사용하여
Oracle Database 12c (12.2)의 PDB를 Oracle Database 19c로
업그레이드 작성 절차를 확인해 보았다.
PDB 핫클론이란?
클론 원의 PDB가 READ/WRITE 상태인 채 클론 PDB를 작성할 수 있는 기능입니다.
아래의 Qiita 기사를 참고로 했습니다.
[Oracle DB] 핫 클론에서 새로 고침 가능한 PDB를 만드는 단계
작업 절차
다음 작업은 OCI의 DBCS간에 수행되었습니다.
클론 원의 PDB가 READ/WRITE 상태인 채 클론 PDB를 작성할 수 있는 기능입니다.
아래의 Qiita 기사를 참고로 했습니다.
[Oracle DB] 핫 클론에서 새로 고침 가능한 PDB를 만드는 단계
작업 절차
다음 작업은 OCI의 DBCS간에 수행되었습니다.
작업 로그
PDB 클론
데이터베이스 링크 만들기
create public database link pdb1 connect to system identified by <SYSTEMユーザパスワード> using 'pdb1';
PDB 클론에서 Pluggable Database 만들기
SQL> create pluggable database pdb1 from pdb1@pdb1 keystore identified by <keystore パスワード>;
Pluggable database created.
PDB 업그레이드
PDB 오픈
SQL> ALTER PLUGGABLE DATABASE PDB1 OPEN UPGRADE;
Pluggable database altered.
SQL> quit
dbupgrade 실행
$ dbupgrade -c PDB1 -d $ORACLE_HOME/rdbms/admin -l /home/oracle
Argument list for [/u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/catctl.pl]
For Oracle internal use only A = 0
Run in c = PDB1
Do not run in C = 0
Input Directory d = /u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/admin
Echo OFF e = 1
Simulate E = 0
Forced cleanup F = 0
Log Id i = 0
Child Process I = 0
Log Dir l = /home/oracle
Priority List Name L = 0
Upgrade Mode active M = 0
SQL Process Count n = 0
SQL PDB Process Count N = 0
Open Mode Normal o = 0
Start Phase p = 0
End Phase P = 0
Reverse Order r = 0
AutoUpgrade Resume R = 0
Script s = 0
Serial Run S = 0
RO User Tablespaces T = 0
Display Phases y = 0
Debug catcon.pm z = 0
Debug catctl.pl Z = 0
catctl.pl VERSION: [19.0.0.0.0]
STATUS: [Production]
BUILD: [RDBMS_19.9.0.0.0DBRU_LINUX.X64_200930]
/u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/orahome = [/u01/app/oracle/product/19.0.0.0/dbhome_1]
/u01/app/oracle/product/19.0.0.0/dbhome_1/bin/orabasehome = [/u01/app/oracle/product/19.0.0.0/dbhome_1]
catctlGetOraBaseLogDir = [/u01/app/oracle/product/19.0.0.0/dbhome_1]
Analyzing file /u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/catupgrd.sql
Log file directory = [/home/oracle]
catcon::set_log_file_base_path: ALL catcon-related output will be written to [/home/oracle/catupgrd_catcon_27539.lst]
catcon::set_log_file_base_path: catcon: See [/home/oracle/catupgrd*.log] files for output generated by scripts
catcon::set_log_file_base_path: catcon: See [/home/oracle/catupgrd_*.lst] files for spool files, if any
Number of Cpus = 2
Database Name = DB19c_iad333
DataBase Version = 19.0.0.0.0
PDB Parallel SQL Process Count = [2] is higher or equal to CPU Count = [2]
Concurrent PDB Upgrades defaulting to CPU Count [2]
Parallel SQL Process Count (PDB) = 2
Parallel SQL Process Count (CDB$ROOT) = 4
Concurrent PDB Upgrades = 2
Generated PDB Inclusion:[PDB1]
CDB$ROOT Open Mode = [OPEN]
Concurrent PDB Upgrades Reset = 1
DataBase Version = 19.0.0.0.0
Start processing of PDBs (PDB1)
[/u01/app/oracle/product/19.0.0.0/dbhome_1/perl/bin/perl /u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/catctl.pl -c 'PDB1' -d /u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/admin -l /home/oracle -I -i pdb1 -n 2 /u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/catupgrd.sql]
Argument list for [/u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/catctl.pl]
For Oracle internal use only A = 0
Run in c = PDB1
Do not run in C = 0
Input Directory d = /u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/admin
Echo OFF e = 1
Simulate E = 0
Forced cleanup F = 0
Log Id i = pdb1
Child Process I = 1
Log Dir l = /home/oracle
Priority List Name L = 0
Upgrade Mode active M = 0
SQL Process Count n = 2
SQL PDB Process Count N = 0
Open Mode Normal o = 0
Start Phase p = 0
End Phase P = 0
Reverse Order r = 0
AutoUpgrade Resume R = 0
Script s = 0
Serial Run S = 0
RO User Tablespaces T = 0
Display Phases y = 0
Debug catcon.pm z = 0
Debug catctl.pl Z = 0
catctl.pl VERSION: [19.0.0.0.0]
STATUS: [Production]
BUILD: [RDBMS_19.9.0.0.0DBRU_LINUX.X64_200930]
/u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/orahome = [/u01/app/oracle/product/19.0.0.0/dbhome_1]
/u01/app/oracle/product/19.0.0.0/dbhome_1/bin/orabasehome = [/u01/app/oracle/product/19.0.0.0/dbhome_1]
catctlGetOraBaseLogDir = [/u01/app/oracle/product/19.0.0.0/dbhome_1]
Analyzing file /u01/app/oracle/product/19.0.0.0/dbhome_1/rdbms/admin/catupgrd.sql
Log file directory = [/home/oracle]
catcon::set_log_file_base_path: ALL catcon-related output will be written to [/home/oracle/catupgrdpdb1_catcon_28588.lst]
catcon::set_log_file_base_path: catcon: See [/home/oracle/catupgrdpdb1*.log] files for output generated by scripts
catcon::set_log_file_base_path: catcon: See [/home/oracle/catupgrdpdb1_*.lst] files for spool files, if any
Number of Cpus = 2
Database Name = DB19c_iad333
DataBase Version = 19.0.0.0.0
PDB1 Open Mode = [MIGRATE]
Generated PDB Inclusion:[PDB1]
CDB$ROOT Open Mode = [OPEN]
Components in [PDB1]
Installed [APS CATALOG CATJAVA CATPROC CONTEXT DV JAVAVM OLS ORDIM OWM SDO XDB XML XOQ]
Not Installed [APEX EM MGW ODM RAC WK]
DataBase Version = 19.0.0.0.0
------------------------------------------------------
Phases [0-107] Start Time:[2021_03_03 11:56:20]
Container Lists Inclusion:[PDB1] Exclusion:[NONE]
------------------------------------------------------
*********** Executing Change Scripts ***********
Serial Phase #:0 [PDB1] Files:1 Time: 46s
*************** Catalog Core SQL ***************
Serial Phase #:1 [PDB1] Files:5 Time: 72s
Restart Phase #:2 [PDB1] Files:1 Time: 1s
*********** Catalog Tables and Views ***********
Parallel Phase #:3 [PDB1] Files:19 Time: 41s
Restart Phase #:4 [PDB1] Files:1 Time: 1s
************* Catalog Final Scripts ************
Serial Phase #:5 [PDB1] Files:7 Time: 31s
***************** Catproc Start ****************
Serial Phase #:6 [PDB1] Files:1 Time: 18s
***************** Catproc Types ****************
Serial Phase #:7 [PDB1] Files:2 Time: 17s
Restart Phase #:8 [PDB1] Files:1 Time: 1s
**************** Catproc Tables ****************
Parallel Phase #:9 [PDB1] Files:67 Time: 61s
Restart Phase #:10 [PDB1] Files:1 Time: 1s
************* Catproc Package Specs ************
Serial Phase #:11 [PDB1] Files:1 Time: 96s
Restart Phase #:12 [PDB1] Files:1 Time: 2s
************** Catproc Procedures **************
Parallel Phase #:13 [PDB1] Files:94 Time: 19s
Restart Phase #:14 [PDB1] Files:1 Time: 2s
Parallel Phase #:15 [PDB1] Files:121 Time: 28s
Restart Phase #:16 [PDB1] Files:1 Time: 1s
Serial Phase #:17 [PDB1] Files:22 Time: 8s
Restart Phase #:18 [PDB1] Files:1 Time: 1s
***************** Catproc Views ****************
Parallel Phase #:19 [PDB1] Files:32 Time: 40s
Restart Phase #:20 [PDB1] Files:1 Time: 2s
Serial Phase #:21 [PDB1] Files:3 Time: 24s
Restart Phase #:22 [PDB1] Files:1 Time: 1s
Parallel Phase #:23 [PDB1] Files:25 Time: 223s
Restart Phase #:24 [PDB1] Files:1 Time: 2s
Parallel Phase #:25 [PDB1] Files:12 Time: 119s
Restart Phase #:26 [PDB1] Files:1 Time: 1s
Serial Phase #:27 [PDB1] Files:1 Time: 0s
Serial Phase #:28 [PDB1] Files:3 ^[[C^[[C^[[C Time: 8s
Serial Phase #:29 [PDB1] Files:1 Time: 0s
Restart Phase #:30 [PDB1] Files:1 Time: 1s
*************** Catproc CDB Views **************
Serial Phase #:31 [PDB1] Files:1 Time: 6s
Restart Phase #:32 [PDB1] Files:1 Time: 1s
Serial Phase #:34 [PDB1] Files:1 Time: 0s
***************** Catproc PLBs *****************
Serial Phase #:35 [PDB1] Files:295 Time: 31s
Serial Phase #:36 [PDB1] Files:1 Time: 0s
Restart Phase #:37 [PDB1] Files:1 Time: 2s
Serial Phase #:38 [PDB1] Files:6 Time: 9s
Restart Phase #:39 [PDB1] Files:1 Time: 2s
*************** Catproc DataPump ***************
Serial Phase #:40 [PDB1] Files:3 ^[[C Time: 85s
Restart Phase #:41 [PDB1] Files:1 Time: 2s
****************** Catproc SQL *****************
Parallel Phase #:42 [PDB1] Files:13 Time: 126s
Restart Phase #:43 [PDB1] Files:1 Time: 1s
Parallel Phase #:44 [PDB1] Files:11 Time: 12s
Restart Phase #:45 [PDB1] Files:1 Time: 1s
Parallel Phase #:46 [PDB1] Files:3 Time: 9s
Restart Phase #:47 [PDB1] Files:1 Time: 1s
************* Final Catproc scripts ************
Serial Phase #:48 [PDB1] Files:1 Time: 15s
Restart Phase #:49 [PDB1] Files:1 Time: 2s
************** Final RDBMS scripts *************
Serial Phase #:50 [PDB1] Files:1 Time: 10s
************ Upgrade Component Start ***********
Serial Phase #:51 [PDB1] Files:1 Time: 5s
Restart Phase #:52 [PDB1] Files:1 Time: 2s
********** Upgrading Java and non-Java *********
Serial Phase #:53 [PDB1] Files:2 Time: 382s
***************** Upgrading XDB ****************
Restart Phase #:54 [PDB1] Files:1 Time: 1s
Serial Phase #:56 [PDB1] Files:3 Time: 14s
Serial Phase #:57 [PDB1] Files:3 Time: 8s
Parallel Phase #:58 [PDB1] Files:10 Time: 10s
Parallel Phase #:59 [PDB1] Files:25 Time: 12s
Serial Phase #:60 [PDB1] Files:4 Time: 20s
Serial Phase #:61 [PDB1] Files:1 Time: 0s
Serial Phase #:62 [PDB1] Files:32 Time: 10s
Serial Phase #:63 [PDB1] Files:1 Time: 0s
Parallel Phase #:64 [PDB1] Files:6 Time: 12s
Serial Phase #:65 [PDB1] Files:2 Time: 35s
Serial Phase #:66 [PDB1] Files:3 Time: 38s
**************** Upgrading ORDIM ***************
Restart Phase #:67 [PDB1] Files:1 Time: 1s
Serial Phase #:69 [PDB1] Files:1 Time: 7s
Parallel Phase #:70 [PDB1] Files:2 Time: 18s
Restart Phase #:71 [PDB1] Files:1 Time: 2s
Parallel Phase #:72 [PDB1] Files:2 Time: 140s
Serial Phase #:73 [PDB1] Files:2 Time: 7s
***************** Upgrading SDO ****************
Restart Phase #:74 [PDB1] Files:1 Time: 2s
Serial Phase #:76 [PDB1] Files:1 Time: 46s
Serial Phase #:77 [PDB1] Files:2 Time: 9s
Restart Phase #:78 [PDB1] Files:1 Time: 2s
Serial Phase #:79 [PDB1] Files:1 Time: 11s
Restart Phase #:80 [PDB1] Files:1 Time: 1s
Parallel Phase #:81 [PDB1] Files:3 Time: 74s
Restart Phase #:82 [PDB1] Files:1 Time: 2s
Serial Phase #:83 [PDB1] Files:1 Time: 8s
Restart Phase #:84 [PDB1] Files:1 Time: 1s
Serial Phase #:85 [PDB1] Files:1 Time: 18s
Restart Phase #:86 [PDB1] Files:1 Time: 2s
Parallel Phase #:87 [PDB1] Files:4 Time: 92s
Restart Phase #:88 [PDB1] Files:1 Time: 1s
Serial Phase #:89 [PDB1] Files:1 Time: 7s
Restart Phase #:90 [PDB1] Files:1 Time: 1s
Serial Phase #:91 [PDB1] Files:2 Time: 29s
Restart Phase #:92 [PDB1] Files:1 Time: 1s
Serial Phase #:93 [PDB1] Files:1 Time: 5s
Restart Phase #:94 [PDB1] Files:1 Time: 1s
******* Upgrading ODM, WK, EXF, RUL, XOQ *******
Serial Phase #:95 [PDB1] Files:1 Time: 21s
Restart Phase #:96 [PDB1] Files:1 Time: 1s
*********** Final Component scripts ***********
Serial Phase #:97 [PDB1] Files:1 Time: 7s
************* Final Upgrade scripts ************
Serial Phase #:98 [PDB1] Files:1 Time: 495s
******************* Migration ******************
Serial Phase #:99 [PDB1] Files:1 Time: 8s
*** End PDB Application Upgrade Pre-Shutdown ***
Serial Phase #:100 [PDB1] Files:1 Time: 8s
Serial Phase #:101 [PDB1] Files:1 Time: 11s
Serial Phase #:102 [PDB1] Files:1 Time: 11s
***************** Post Upgrade *****************
Serial Phase #:103 [PDB1] Files:1 Time: 127s
**************** Summary report ****************
Serial Phase #:104 [PDB1] Files:1 Time: 6s
*** End PDB Application Upgrade Post-Shutdown **
Serial Phase #:105 [PDB1] Files:1 Time: 5s
Serial Phase #:106 [PDB1] Files:1 Time: 5s
Serial Phase #:107 [PDB1] Files:1 Time: 0s
------------------------------------------------------
Phases [0-107] End Time:[2021_03_03 12:45:06]
Container Lists Inclusion:[PDB1] Exclusion:[NONE]
------------------------------------------------------
Grand Total Time: 2928s [PDB1]
LOG FILES: (/home/oracle/catupgrdpdb1*.log)
Upgrade Summary Report Located in:
/home/oracle/upg_summary.log
Time: 2998s For PDB(s)
Grand Total Time: 2998s
LOG FILES: (/home/oracle/catupgrd*.log)
Grand Total Upgrade Time: [0d:0h:49m:58s]
$
PDB 오픈
$ sqlplus / as sysdba
SQL> alter pluggable database PDB1 open;
Warning: PDB altered with errors.
SQL> alter pluggable database PDB1 save state;
Pluggable database altered.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB0 READ WRITE NO
4 PDB1 READ WRITE YES
SQL> quit
$
업그레이드 후 작업
PL/SQL 코드 재컴파일
$ $ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -n 1 -c 'PDB1' -e -b utlrp -d /home/oracle $ORACLE_HOME/rdbms/admin/utlrp.sql
catcon::set_log_file_base_path: ALL catcon-related output will be written to [/home/oracle/utlrp_catcon_93112.lst]
catcon::set_log_file_base_path: catcon: See [/home/oracle/utlrp*.log] files for output generated by scripts
catcon::set_log_file_base_path: catcon: See [/home/oracle/utlrp_*.lst] files for spool files, if any
catcon.pl: completed successfully
$
시간대 데이터 업그레이드
$ $ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -n 1 -c 'PDB1' -l /home/oracle -b utltz_upg_check -d /home/oracle $ORACLE_HOME/rdbms/admin/utltz_upg_check.sql
catcon::set_log_file_base_path: ALL catcon-related output will be written to [/home/oracle/utltz_upg_check_catcon_99134.lst]
catcon::set_log_file_base_path: catcon: See [/home/oracle/utltz_upg_check*.log] files for output generated by scripts
catcon::set_log_file_base_path: catcon: See [/home/oracle/utltz_upg_check_*.lst] files for spool files, if any
catcon.pl: completed successfully
$
$ $ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -n 1 -c 'PDB1' -l /home/oracle -b utltz_upg_apply -d /home/oracle $ORACLE_HOME/rdbms/admin/utltz_upg_apply.sql
catcon::set_log_file_base_path: ALL catcon-related output will be written to [/home/oracle/utltz_upg_apply_catcon_5114.lst]
catcon::set_log_file_base_path: catcon: See [/home/oracle/utltz_upg_apply*.log] files for output generated by scripts
catcon::set_log_file_base_path: catcon: See [/home/oracle/utltz_upg_apply_*.lst] files for spool files, if any
catcon.pl: completed successfully
$
PDB 상태 확인
$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Mar 3 13:10:32 2021
Version 19.9.0.0.0
Copyright (c) 1982, 2020, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
Version 19.9.0.0.0
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB0 READ WRITE NO
4 PDB1 READ WRITE NO
결론
PDB 핫클론에 의해 적은 단계로 PDB 업그레이드가 가능했다.
참고 정보
$ sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Wed Mar 3 13:10:32 2021
Version 19.9.0.0.0
Copyright (c) 1982, 2020, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Standard Edition 2 Release 19.0.0.0.0 - Production
Version 19.9.0.0.0
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB0 READ WRITE NO
4 PDB1 READ WRITE NO
PDB 핫클론에 의해 적은 단계로 PDB 업그레이드가 가능했다.
참고 정보
보충
Reference
이 문제에 관하여([Oracle Cloud] DBCS간에 PDB 핫클론으로 PDB(12c)를 Oracle19c로 업그레이드해 보았다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kenwatan/items/251b8f953607fd2c7d37텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)