If you follow my CPU cycle dissect articles, you will note that a new package appeared on 11.2.0.4 on the EXA Bundle Patch (still not available with the PSU). DBMS_PDB!
Until today, the only way to upgrade 11g to any 12+ PDB using the "plug way" would be following this approach:
Of course there are many other approaches using expdp, transportable database, etc..
Checking Mike Dietrich blog post for 12.2 upgrade: https://mikedietrichde.com/2019/07/24/database-migration-from-non-cdb-to-pdb-plug-in-upgrade-convert/, we have this picture:
And he states:
I can’t do this exercise with my 11.2.0.4 databases, as
DBMS_PDB.DESCRIBE
does not exist in this release. And even Oracle 12.1.0.2 does not support the following operation unless I create my CDB with shared UNDO.
Well.. not anymore.. =]
So it seems that Oracle is planning to do 11g non-cdb to pdb migration using the same flow of the second chart above, doing the upgrade after plugging the 11g on the target database.
Let's check the DBMS_PDB contents.. describing it:
[oracle@localhost ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Thu Aug 27 12:48:04 2020 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production With the Partitioning, Oracle Label Security, OLAP, Data Mining and Real Application Testing options SQL> desc DBMS_PDB PROCEDURE DESCRIBE Argument Name Type In/Out Default? ------------------------------ ----------------------- ------ -------- DIRNAME VARCHAR2 IN FILENAME VARCHAR2 IN FUNCTION GETRELEASELEVEL RETURNS NUMBER SQL>
Reading SYS.DBMS_PDB package code:
0a1,19 > package dbms_pdb authid current_user is > -- > -- PROCEDURES AND FUNCTIONS > -- > procedure describe(dirName IN VARCHAR2, fileName IN VARCHAR2); > -- Generate an XML file which describes tablespaces and datafiles that > -- belong to the non-CDB > -- Input arguments: > -- dirName - Directory location of file to be created. This string is a > -- directory object name and must be specified in upper case. > -- User invoking this procedure must have READ and WRITE > -- privileges on this directory > -- fileName - name of the XML file which will contain description of the > -- non-CDB > > -- this function returns a numeric representation of "compatible" parameter > function getReleaseLevel return NUMBER; > end; >
Let's see if it works..
So there is nothing (yet) documented about how to use it for a 11g.. maybe this package shouldn't even be called by us (users) but by the AutoUpgrade tool or something.
But since I'm an adventurer, let's see what I can do or how far I can go with it..
First calling the DESCRIBE procedure to create the xml file.
SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup open read only; ORACLE instance started. Total System Global Area 835104768 bytes Fixed Size 2257840 bytes Variable Size 553651280 bytes Database Buffers 272629760 bytes Redo Buffers 6565888 bytes Database mounted. Database opened. SQL> create directory PDB_DIR as '/external/11g/'; Directory created. SQL> BEGIN 2 DBMS_PDB.DESCRIBE( 3 DIRNAME => 'PDB_DIR', 4 FILENAME => 'db11g.xml'); 5 END; 6 / PL/SQL procedure successfully completed.
Checking the file contents.
<?xml version="1.0"?> <PDB> <xmlversion>1</xmlversion> <pdbname>orcl</pdbname> <cid>0</cid> <byteorder>1</byteorder> <vsn>186647552</vsn> <vsns> <vsnnum>11.2.0.4.0</vsnnum> <cdbcompt>11.2.0.4.0</cdbcompt> <pdbcompt>11.2.0.4.0</pdbcompt> <vsnlibnum>0.0.0.0.22</vsnlibnum> <vsnsql>22</vsnsql> <vsnbsv>8.0.0.0.0</vsnbsv> </vsns> <dbid>1456375571</dbid> <ncdb2pdb>1</ncdb2pdb> <cdbid>1456375571</cdbid> <guid>ADDFB4D44D5938EFE055000000000001</guid> <uscnbas>1131194</uscnbas> <uscnwrp>0</uscnwrp> <undoscn>7</undoscn> <rdba>4194824</rdba> <tablespace> <name>SYSTEM</name> <type>0</type> <tsn>0</tsn> <status>1</status> <issft>0</issft> <isnft>0</isnft> <encts>0</encts> <flags>0</flags> <bmunitsize>8</bmunitsize> <file> <path>/u01/app/oracle/oradata/orcl/system01.dbf</path> <afn>1</afn> <rfn>1</rfn> <createscnbas>7</createscnbas> <createscnwrp>0</createscnwrp> <status>1</status> <fileblocks>101120</fileblocks> <blocksize>8192</blocksize> <vsn>186647552</vsn> <fdbid>1456375571</fdbid> <fcpsb>1131193</fcpsb> <fcpsw>0</fcpsw> <frlsb>925702</frlsb> <frlsw>0</frlsw> <frlt>928594837</frlt> <autoext>1</autoext> <maxsize>4194302</maxsize> <incsize>1280</incsize> <plugscn>0</plugscn> <plugafn>0</plugafn> <plugdbid>0</plugdbid> </file> </tablespace> <tablespace> <name>SYSAUX</name> <type>0</type> <tsn>1</tsn> <status>1</status> <issft>0</issft> <isnft>0</isnft> <encts>0</encts> <flags>0</flags> <bmunitsize>8</bmunitsize> <file> <path>/u01/app/oracle/oradata/orcl/sysaux01.dbf</path> <afn>2</afn> <rfn>2</rfn> <createscnbas>1834</createscnbas> <createscnwrp>0</createscnwrp> <status>1</status> <fileblocks>65280</fileblocks> <blocksize>8192</blocksize> <vsn>186647552</vsn> <fdbid>1456375571</fdbid> <fcpsb>1131193</fcpsb> <fcpsw>0</fcpsw> <frlsb>925702</frlsb> <frlsw>0</frlsw> <frlt>928594837</frlt> <autoext>1</autoext> <maxsize>4194302</maxsize> <incsize>1280</incsize> <plugscn>0</plugscn> <plugafn>0</plugafn> <plugdbid>0</plugdbid> </file> </tablespace> <tablespace> <name>UNDOTBS1</name> <type>2</type> <tsn>2</tsn> <status>1</status> <issft>0</issft> <isnft>0</isnft> <encts>0</encts> <flags>0</flags> <bmunitsize>8</bmunitsize> <file> <path>/u01/app/oracle/oradata/orcl/undotbs01.dbf</path> <afn>3</afn> <rfn>3</rfn> <createscnbas>923328</createscnbas> <createscnwrp>0</createscnwrp> <status>1</status> <fileblocks>8960</fileblocks> <blocksize>8192</blocksize> <vsn>186647552</vsn> <fdbid>1456375571</fdbid> <fcpsb>1131193</fcpsb> <fcpsw>0</fcpsw> <frlsb>925702</frlsb> <frlsw>0</frlsw> <frlt>928594837</frlt> <autoext>1</autoext> <maxsize>4194302</maxsize> <incsize>640</incsize> <plugscn>0</plugscn> <plugafn>0</plugafn> <plugdbid>0</plugdbid> </file> </tablespace> <tablespace> <name>TEMP</name> <type>1</type> <tsn>3</tsn> <status>1</status> <issft>0</issft> <isnft>0</isnft> <encts>0</encts> <flags>0</flags> <bmunitsize>128</bmunitsize> <file> <path>/u01/app/oracle/oradata/orcl/temp01.dbf</path> <afn>1</afn> <rfn>1</rfn> <createscnbas>925786</createscnbas> <createscnwrp>0</createscnwrp> <status>1</status> <fileblocks>9472</fileblocks> <blocksize>8192</blocksize> <vsn>186647552</vsn> <autoext>1</autoext> <maxsize>4194302</maxsize> <incsize>80</incsize> <plugscn>0</plugscn> <plugafn>0</plugafn> <plugdbid>0</plugdbid> </file> </tablespace> <tablespace> <name>USERS</name> <type>0</type> <tsn>4</tsn> <status>1</status> <issft>0</issft> <isnft>0</isnft> <encts>0</encts> <flags>0</flags> <bmunitsize>8</bmunitsize> <file> <path>/u01/app/oracle/oradata/orcl/users01.dbf</path> <afn>4</afn> <rfn>4</rfn> <createscnbas>16143</createscnbas> <createscnwrp>0</createscnwrp> <status>1</status> <fileblocks>8320</fileblocks> <blocksize>8192</blocksize> <vsn>186647552</vsn> <fdbid>1456375571</fdbid> <fcpsb>1131193</fcpsb> <fcpsw>0</fcpsw> <frlsb>925702</frlsb> <frlsw>0</frlsw> <frlt>928594837</frlt> <autoext>1</autoext> <maxsize>4194302</maxsize> <incsize>160</incsize> <plugscn>0</plugscn> <plugafn>0</plugafn> <plugdbid>0</plugdbid> </file> </tablespace> <recover>0</recover> <optional> <ncdb2pdb>1</ncdb2pdb> <csid>178</csid> <ncsid>2000</ncsid> <options> <option>AMD=11.2.0.4.0</option> <option>APS=11.2.0.4.0</option> <option>CATALOG=11.2.0.4.0</option> <option>CATJAVA=11.2.0.4.0</option> <option>CATPROC=11.2.0.4.0</option> <option>CONTEXT=11.2.0.4.0</option> <option>DV=11.2.0.4.0</option> <option>EM=11.2.0.4.0</option> <option>JAVAVM=11.2.0.4.0</option> <option>OLS=11.2.0.4.0</option> <option>ORDIM=11.2.0.4.0</option> <option>OWM=11.2.0.4.0</option> <option>RAC=11.2.0.4.0</option> <option>SDO=11.2.0.4.0</option> <option>XDB=11.2.0.4.0</option> <option>XML=11.2.0.4.0</option> <option>XOQ=11.2.0.4.0</option> </options> <dv>0</dv> <APEX>3.2.1.00.12:0</APEX> <parameters> <parameter>processes=150</parameter> <parameter>memory_target=838860800</parameter> <parameter>db_block_size=8192</parameter> <parameter>compatible='11.2.0.4.0'</parameter> <parameter>recyclebin='OFF'</parameter> <parameter>os_roles=FALSE</parameter> <parameter>open_cursors=300</parameter> <parameter>sql92_security=TRUE</parameter> </parameters> <sqlpatches/> <tzvers> <tzver>primary version:14</tzver> <tzver>secondary version:0</tzver> </tzvers> <walletkey>0</walletkey> <services> <service>SYS$BACKGROUND</service> <service>SYS$USERS</service> <service>seeddataXDB</service> <service>seeddata</service> <service>orclXDB</service> <service>orcl</service> </services> <opatches/> <hasclob>1</hasclob> <awr/> <hardvsnchk>0</hardvsnchk> <localundo>1</localundo> <apps/> <dbedition>0</dbedition> <dvopsctl>2</dvopsctl> <clnupsrcpal>1</clnupsrcpal> </optional> </PDB>
Now trying to import on the target environment:
SQL> CREATE PLUGGABLE DATABASE ora11g USING '/external/11g/db11g.xml' 2 COPY 3 FILE_NAME_CONVERT = ('/external/11g/', '/u01/app/oracle/oradata/ORCL/ora11g/'); CREATE PLUGGABLE DATABASE ora11g USING '/external/11g/db11g.xml' * ERROR at line 1: ORA-65346: The PDB version is lower and components (AMD, EM) are missing in CDB.
Damn it! Requirement errors..
As I'm a bit lazy today and this is a lab environment, I will simply remove the entries from .xml to try again:
Now running it again:
SQL> CREATE PLUGGABLE DATABASE ora11g USING '/external/11g/db11g.xml' 2 COPY 3 FILE_NAME_CONVERT = ('/external/11g/', '/u01/app/oracle/oradata/ORCL/ora11g/'); Pluggable database created.
We have the PDB!
SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 PDB01 READ WRITE NO 4 ORA11G MOUNTED
Now let's try to convert the noncdb to pdb!
SQL> set timing on SQL> set serverout on SQL> set echo on SQL> set termout on SQL> spool /external/11g/db11g_noncdbtopdb.log SQL> start ?/rdbms/admin/noncdb_to_pdb.sql
And it fails with:
13:32:48 SQL> alter pluggable database "&pdbname" open upgrade; alter pluggable database "ORA11G" open upgrade * ERROR at line 1: ORA-00604: error occurred at recursive SQL level 1 ORA-00942: table or view does not exist
As I couldn't find the offending SQL, I've just enabled events '942 trace name ERRORSTACK level 3' and tried again. Then on the logs I got:
... about to signal 942 Name: CDB_FILE$ ... ----- Current SQL Statement for this session (sql_id=azbb7v8wa64x9) ----- delete from cdb_file$ ...
The new PDB needs to be upgraded at first.. let me try the dbupdate utily..
[oracle@localhost 11g]$ dbupgrade -l /media/sf_Patch/11g/logs -c "ORA11G" Argument list for [/u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl] For Oracle internal use only A = 0 Run in c = ORA11G Do not run in C = 0 Input Directory d = 0 Echo OFF e = 1 Simulate E = 0 Forced cleanup F = 0 Log Id i = 0 Child Process I = 0 Log Dir l = /media/sf_Patch/11g/logs 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.8.0.0.0DBRU_LINUX.X64_200702] /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/orahome = [/u01/app/oracle/product/19.0.0/dbhome_1] /u01/app/oracle/product/19.0.0/dbhome_1/bin/orabasehome = [/u01/app/oracle/homes/OraDB19Home1] catctlGetOraBaseLogDir = [/u01/app/oracle/homes/OraDB19Home1] Analyzing file /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catupgrd.sql Log file directory = [/media/sf_Patch/11g/logs] catcon::set_log_file_base_path: ALL catcon-related output will be written to [/media/sf_Patch/11g/logs/catupgrd_catcon_27217.lst] catcon::set_log_file_base_path: catcon: See [/media/sf_Patch/11g/logs/catupgrd*.log] files for output generated by scripts catcon::set_log_file_base_path: catcon: See [/media/sf_Patch/11g/logs/catupgrd_*.lst] files for spool files, if any Number of Cpus = 4 Database Name = orcl DataBase Version = 19.0.0.0.0 Parallel SQL Process Count (PDB) = 2 Parallel SQL Process Count (CDB$ROOT) = 4 Concurrent PDB Upgrades = 2 Generated PDB Inclusion:[ORA11G] CDB$ROOT Open Mode = [OPEN] Concurrent PDB Upgrades Reset = 1 DataBase Version = 19.0.0.0.0 Start processing of PDBs (ORA11G) [/u01/app/oracle/product/19.0.0/dbhome_1/perl/bin/perl /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl -l /media/sf_Patch/11g/logs -c 'ORA11G' -I -i ora11g -n 2 /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catupgrd.sql] Argument list for [/u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl] For Oracle internal use only A = 0 Run in c = ORA11G Do not run in C = 0 Input Directory d = 0 Echo OFF e = 1 Simulate E = 0 Forced cleanup F = 0 Log Id i = ora11g Child Process I = 1 Log Dir l = /media/sf_Patch/11g/logs 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.8.0.0.0DBRU_LINUX.X64_200702] /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/orahome = [/u01/app/oracle/product/19.0.0/dbhome_1] /u01/app/oracle/product/19.0.0/dbhome_1/bin/orabasehome = [/u01/app/oracle/homes/OraDB19Home1] catctlGetOraBaseLogDir = [/u01/app/oracle/homes/OraDB19Home1] Analyzing file /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catupgrd.sql Log file directory = [/media/sf_Patch/11g/logs] catcon::set_log_file_base_path: ALL catcon-related output will be written to [/media/sf_Patch/11g/logs/catupgrdora11g_catcon_27516.lst] catcon::set_log_file_base_path: catcon: See [/media/sf_Patch/11g/logs/catupgrdora11g*.log] files for output generated by scripts catcon::set_log_file_base_path: catcon: See [/media/sf_Patch/11g/logs/catupgrdora11g_*.lst] files for spool files, if any Number of Cpus = 4 Database Name = orcl DataBase Version = 19.0.0.0.0 ORA11G Open Mode = [MOUNTED] Generated PDB Inclusion:[ORA11G] CDB$ROOT Open Mode = [OPEN] Components in [ORA11G] Installed [None] Not Installed [APEX APS CATALOG CATJAVA CATPROC CONTEXT DV EM JAVAVM MGW ODM OLS ORDIM OWM RAC SDO WK XDB XML XOQ] DataBase Version = 19.0.0.0.0 catcon::exec_reset_pdb_mode_stmts: error reported while attempting to reset PDB modes: catcon::exec_reset_pdb_mode_stmts: output produced by ALTER PDB statements: catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: SQL*Plus: Release 19.0.0.0.0 - Production on Thu Aug 27 16:51:34 2020 catcon::exec_reset_pdb_mode_stmts: Version 19.8.0.0.0 catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: Copyright (c) 1982, 2020, Oracle. All rights reserved. catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: SQL> set newpage 1#LF# catcon::exec_reset_pdb_mode_stmts: set pagesize 14#LF# catcon::exec_reset_pdb_mode_stmts: connect / AS sysdba#LF# catcon::exec_reset_pdb_mode_stmts: Connected. catcon::exec_reset_pdb_mode_stmts: alter session set "_oracle_script"=TRUE#LF#/#LF# catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: Session altered. catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: alter pluggable database "ORA11G" open UPGRADE services=NONE#LF#/#LF# catcon::exec_reset_pdb_mode_stmts: alter pluggable database "ORA11G" open UPGRADE services=NONE catcon::exec_reset_pdb_mode_stmts: * catcon::exec_reset_pdb_mode_stmts: ERROR at line 1: catcon::exec_reset_pdb_mode_stmts: ORA-00604: error occurred at recursive SQL level 1 catcon::exec_reset_pdb_mode_stmts: ORA-00942: table or view does not exist catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: SQL> SQL> catcon::exec_reset_pdb_mode_stmts: SQL> Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production catcon::exec_reset_pdb_mode_stmts: Version 19.8.0.0.0 catcon::reset_pdb_modes: some ALTER PDB OPEN <one or more PDBs> statements executed by exec_reset_pdb_mode_stmts resulted in errors. Will try to execute ALTER PDB OPEN <PDB> statements for all PDBs that are still not open in the requested mode catcon::exec_reset_pdb_mode_stmts: error reported while attempting to reset PDB modes: catcon::exec_reset_pdb_mode_stmts: output produced by ALTER PDB statements: catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: SQL*Plus: Release 19.0.0.0.0 - Production on Thu Aug 27 16:51:39 2020 catcon::exec_reset_pdb_mode_stmts: Version 19.8.0.0.0 catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: Copyright (c) 1982, 2020, Oracle. All rights reserved. catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: SQL> set newpage 1#LF# catcon::exec_reset_pdb_mode_stmts: set pagesize 14#LF# catcon::exec_reset_pdb_mode_stmts: connect / AS sysdba#LF# catcon::exec_reset_pdb_mode_stmts: Connected. catcon::exec_reset_pdb_mode_stmts: alter session set "_oracle_script"=TRUE#LF#/#LF# catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: Session altered. catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: alter pluggable database "ORA11G" open UPGRADE services=NONE#LF#/#LF# catcon::exec_reset_pdb_mode_stmts: alter pluggable database "ORA11G" open UPGRADE services=NONE catcon::exec_reset_pdb_mode_stmts: * catcon::exec_reset_pdb_mode_stmts: ERROR at line 1: catcon::exec_reset_pdb_mode_stmts: ORA-00604: error occurred at recursive SQL level 1 catcon::exec_reset_pdb_mode_stmts: ORA-00942: table or view does not exist catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: catcon::exec_reset_pdb_mode_stmts: SQL> SQL> catcon::exec_reset_pdb_mode_stmts: SQL> Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production catcon::exec_reset_pdb_mode_stmts: Version 19.8.0.0.0 catcon::reset_pdb_modes: some ALTER PDB statements executed by exec_reset_pdb_mode_stmts resulted in errors catcon::force_pdb_modes: PDB ORA11G will not be processed because it could not be opened in requested mode (UPGRADE) on the instance orcl. It will be added to the list of PDBs which will be ignored ------------------------------------------------------ Phases [0-107] Start Time:[2020_08_27 16:51:45] Container Lists Inclusion:[ORA11G] Exclusion:[NONE] ------------------------------------------------------ *********** Executing Change Scripts *********** Serial Phase #:0 [ORA11G] Files:1 catcon::validate_con_names: ORA11G is not open catcon::catconQuery: ORA11G does not refer to an existing and open PDB Use of uninitialized value in concatenation (.) or string at /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl line 5797. catcon::catconExec: start executing scripts/SQL statements catcon::catconExec: Script names/SQL statements: catcon::catconExec: @catupstr.sql catcon::catconExec: SingleThreaded = 1 catcon::catconExec: RootOnly = 0 catcon::catconExec: IssuePerProcStmts = 0 catcon::catconExec: ConNamesIncl = ORA11G catcon::catconExec: ConNamesExcl undefined catcon::catconExec: CustomErrLoggingIdent undefined catcon::catconExec: skipProcQuery undefined catcon::catconExec: (2020-08-27 16:51:46) catcon::catconExec: Container names specified for a non-CDB Unexpected error encountered in catconExec; exiting No child processes Unexpected error encountered in catctlMain; Error Stack Below; exiting Died at /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl line 9188. at /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl line 9188. main::catctlDie("\x{a}Unexpected error encountered in catconExec; exiting\x{a} No chil"...) called at /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl line 5650 main::catctlExecutePhaseFiles(0, 1, "ORA11G", "", undef) called at /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl line 2035 main::catctlRunPhase(0, 1, "ORA11G", "", undef) called at /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl line 2197 main::catctlRunPhases(0, 108, 108, "ORA11G", "", undef) called at /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl line 2816 main::catctlRunMainPhases() called at /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl line 1463 main::catctlMain() called at /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl line 1370 eval {...} called at /u01/app/oracle/product/19.0.0/dbhome_1/rdbms/admin/catctl.pl line 1368 ------------------------------------------------------ CATCTL FATAL ERROR ------------------------------------------------------ LOG FILES: (/media/sf_Patch/11g/logs/catupgrdora11g*.log) TRACE FILE: (/media/sf_Patch/11g/logs/catupgrdora11g_trace.log) catcon: See [/media/sf_Patch/11g/logs/catupgrdora11g*.log] files for output generated by scripts catcon: See [/media/sf_Patch/11g/logs/catupgrdora11g_*.lst] files for spool files, if any !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! catcon version: /st_rdbms_19/16 catconInit2: start logging catcon output at 2020-08-27 16:50:47 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! (...) Grand Total Time: 0s [ORA11G] LOG FILES: (/media/sf_Patch/11g/logs/catupgrdora11g*.log) catcon::catconWrapUp: (PID=27516) about to free up all resources catcon::end_processes: will end processes 0 to 1 catcon::end_processes: check if process 0 (id=27683) is alive catcon::end_processes: process 0 (id=27683) is alive catcon::end_processes: write EXIT to process 0 (id=27683) catcon::end_processes: close file handle for process 0 (id=27683) catcon::end_processes: setting FileHandle[0] to undef catcon::end_processes: check if process 1 (id=27684) is alive catcon::end_processes: process 1 (id=27684) is alive catcon::end_processes: write EXIT to process 1 (id=27684) catcon::end_processes: close file handle for process 1 (id=27684) catcon::end_processes: setting FileHandle[1] to undef catcon::end_processes: done with processes 0 to 1 catcon::clean_up_compl_files: FileNameBase = /media/sf_Patch/11g/logs/catupgrdora11g, FirstProc =0, LastProc = 1 catcon::clean_up_compl_files: call sureunlink to remove /media/sf_Patch/11g/logs/catupgrdora11g_catcon_27683.done catcon::sureunlink: unlink(/media/sf_Patch/11g/logs/catupgrdora11g_catcon_27683.done) succeeded after 1 attempt(s) catcon::sureunlink: verify that the file really no longer exists catcon::sureunlink: confirmed that /media/sf_Patch/11g/logs/catupgrdora11g_catcon_27683.done no longer exists after 1 attempts catcon::clean_up_compl_files: removed /media/sf_Patch/11g/logs/catupgrdora11g_catcon_27683.done catcon::clean_up_compl_files: call sureunlink to remove /media/sf_Patch/11g/logs/catupgrdora11g_catcon_27684.done catcon::sureunlink: unlink(/media/sf_Patch/11g/logs/catupgrdora11g_catcon_27684.done) succeeded after 1 attempt(s) catcon::sureunlink: verify that the file really no longer exists catcon::sureunlink: confirmed that /media/sf_Patch/11g/logs/catupgrdora11g_catcon_27684.done no longer exists after 1 attempts catcon::clean_up_compl_files: removed /media/sf_Patch/11g/logs/catupgrdora11g_catcon_27684.done catcon::end_processes: ended processes 0 to 1 catcon::delete_idle_logs: Deleting log file /media/sf_Patch/11g/logs/catupgrdora11g1.log because SQL*Plus process for which it was created did no work catcon::sureunlink: unlink(/media/sf_Patch/11g/logs/catupgrdora11g1.log) succeeded after 1 attempt(s) catcon::sureunlink: verify that the file really no longer exists catcon::sureunlink: confirmed that /media/sf_Patch/11g/logs/catupgrdora11g1.log no longer exists after 1 attempts catcon::sureunlink: unlink(/media/sf_Patch/11g/logs/catupgrdora11g_catcon_kill_sess_27516_ALL.sql) succeeded after 1 attempt(s) catcon::sureunlink: verify that the file really no longer exists catcon::sureunlink: confirmed that /media/sf_Patch/11g/logs/catupgrdora11g_catcon_kill_sess_27516_ALL.sql no longer exists after 1 attempts catcon::catconWrapUp: done Time: 108s For PDB(s) Grand Total Time: 108s LOG FILES: (/media/sf_Patch/11g/logs/catupgrd*.log) Pdb Upgrades With Errors ------------------------------------------------------ Error In [ORA11G] Status is [1] Check Log Files [/media/sf_Patch/11g/logs/catupgrdora11g*.log]
And the same error again when running: alter pluggable database "ORA11G" open UPGRADE services=NONE
As I said, probably this is still something Oracle is working on and is not fully developed..
As there are probably thousands of customers still using 11.2.0.4, having a simpler way to upgrade to latest 19c will be amazing! So, nothing I can do right now.. even though 11.2 is being "prepared" to export, seems my 19.8 is not prepared to plug it.
That's it! Let's see what is coming on the next months.
Have you enjoyed? Please leave a comment or give a 👍!
3 comments
This is great. Do you know which Bundle patch this is included?
Hi there,
have a look at MOS ID 2650115.1
The package just served this purpose.
RJ:
We are getting sys.DBMS_PDB package invalid on 11.2.0.4 and there is no MOS to fix this.
I tried downloading the DBMSPDDB sql from 2650115.1 and tried recreating it but gave errors.
Please let me know if you have any insights.
Thank you