Upgrade Non-CDB to Oracle Database 21c (AutoUpgrade)
This article provides an overview of upgrading a non-CDB database to Oracle 21c on the same server using AutoUpgrade.
oracle 21cconfigurationintermediate
by OracleDba
15 views
This article provides an overview of upgrading a non-CDB database to Oracle 21c on the same server using AutoUpgrade.
1
19c, 18c, 12.212
yum install -y oracle-database-preinstall-21c
yum update -y1234567891011121314151617181920212223242526272829303132
export ORACLE_HOME=$ORACLE_BASE/product/21.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=cdb1
export SOFTWARE_DIR=/u01/software
export ORA_INVENTORY=/u01/app/oraInventory
mkdir -p ${ORACLE_HOME}
cd $ORACLE_HOME
/bin/unzip -oq ${SOFTWARE_DIR}/LINUX.X64_213000_db_home.zip
./runInstaller -ignorePrereq -waitforcompletion -silent \
-responseFile ${ORACLE_HOME}/install/response/db_install.rsp \
oracle.install.option=INSTALL_DB_SWONLY \
ORACLE_HOSTNAME=${ORACLE_HOSTNAME} \
UNIX_GROUP_NAME=oinstall \
INVENTORY_LOCATION=${ORA_INVENTORY} \
SELECTED_LANGUAGES=en,en_GB \
ORACLE_HOME=${ORACLE_HOME} \
ORACLE_BASE=${ORACLE_BASE} \
oracle.install.db.InstallEdition=EE \
oracle.install.db.OSDBA_GROUP=dba \
oracle.install.db.OSBACKUPDBA_GROUP=dba \
oracle.install.db.OSDGDBA_GROUP=dba \
oracle.install.db.OSKMDBA_GROUP=dba \
oracle.install.db.OSRACDBA_GROUP=dba \
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false \
DECLINE_SECURITY_UPDATES=true
As a root user, execute the following script(s):
1. /u01/app/oracle/product/21.0.0/dbhome_1/root.sh1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
#dbca -silent -deleteDatabase -sourceDB cdb1 -sysDBAUserName sys -sysDBAPassword SysPassword1
dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname cdb1 -sid cdb1 -responseFile NO_VALUE \
-characterSet AL32UTF8 \
-sysPassword SysPassword1 \
-systemPassword SysPassword1 \
-createAsContainerDatabase true \
-numberOfPDBs 0 \
-databaseType MULTIPURPOSE \
-memoryMgmtType auto_sga \
-totalMemory 1536 \
-storageType FS \
-datafileDestination "/u02/oracle/" \
-redoLogFileSize 50 \
-emConfiguration NONE \
-ignorePreReqs
Prepare for db operation
10% complete
Copying database files
40% complete
Creating and starting Oracle instance
42% complete
46% complete
52% complete
56% complete
60% complete
Completing Database Creation
66% complete
69% complete
70% complete
Executing Post Configuration Actions
100% complete
Database creation complete. For details check the logfiles at:
/u01/app/oracle/cfgtoollogs/dbca/cdb1.
Database Information:
Global Database Name:cdb1
System Identifier(SID):cdb1
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/cdb1/cdb13.log" for further details.
$
sqlplus / as sysdba <<EOF
alter system set db_recovery_file_dest_size=40g;
alter system set db_recovery_file_dest='/u01/app/oracle/fast_recovery_area';
alter system set db_create_file_dest = '/u02/oradata';
shutdown immediate;
startup mount;
alter database archivelog;
alter database open;
exit;
EOF1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
cd $ORACLE_BASE/product/21.0.0/dbhome_1/rdbms/admin
mv autoupgrade.jar autoupgrade.jar.`date +"%Y"-"%m"-"%d"`
cp /tmp/autoupgrade.jar .
export ORACLE_SID=mydb
export ORAENV_ASK=NO
. oraenv
export ORAENV_ASK=YES
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/dbhome_1
$ORACLE_BASE/product/21.0.0/dbhome_1/jdk/bin/java \
-jar $ORACLE_BASE/product/21.0.0/dbhome_1/rdbms/admin/autoupgrade.jar \
-create_sample_file config /tmp/config.txt noncdbtopdb
upg1.log_dir=/u01/app/oracle/cfgtoollogs/autoupgrade/mydb
upg1.sid=mydb
upg1.source_home=/u01/app/oracle/product/19.0.0/dbhome_1
upg1.target_cdb=cdb1
upg1.target_home=/u01/app/oracle/product/21.0.0/dbhome_1
upg1.target_pdb_name=mydb
#upg1.target_pdb_copy_option=file_name_convert=('emp', 'emppdb')
upg1.start_time=NOW # Optional. 10 Minutes from now
upg1.upgrade_node=localhost # Optional. To find out the name of your node, run the hostname utility. Default is 'localhost'
upg1.run_utlrp=yes # Optional. Whether or not to run utlrp after upgrade
upg1.timezone_upg=yes # Optional. Whether or not to run the timezone upgrade
upg1.target_version=21 # Oracle version of the target ORACLE_HOME. Only required when the target Oracle database version is 12.2
$ORACLE_BASE/product/21.0.0/dbhome_1/jdk/bin/java \
-jar $ORACLE_BASE/product/21.0.0/dbhome_1/rdbms/admin/autoupgrade.jar \
-config /tmp/config.txt -mode analyze
AutoUpgrade tool launched with default options
Processing config file ...
+--------------------------------+
| Starting AutoUpgrade execution |
+--------------------------------+
1 databases will be analyzed
Type 'help' to list console commands
upg> Job 101 completed
------------------- Final Summary --------------------
Number of databases [ 1 ]
Jobs finished [1]
Jobs failed [0]
Jobs pending [0]
Please check the summary report at:
/u01/app/oracle/cfgtoollogs/autoupgrade/cfgtoollogs/upgrade/auto/status/status.html
/u01/app/oracle/cfgtoollogs/autoupgrade/cfgtoollogs/upgrade/auto/status/status.log
==========================================
Autoupgrade Summary Report
==========================================
[Date] Sun Aug 22 07:41:07 UTC 2021
[Number of Jobs] 1
==========================================
[Job ID] 101
==========================================
[DB Name] mydb
[Version Before Upgrade] 19.12.0.0.0
[Version After Upgrade] 21.3.0.0.0
------------------------------------------
[Stage Name] PRECHECKS
[Status] SUCCESS
[Start Time] 2021-08-22 07:40:55
[Duration] 0:00:12
[Log Directory] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/101/prechecks
[Detail] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/101/prechecks/mydb_preupgrade.log
Precheck passed and no manual intervention needed
------------------------------------------123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
$ORACLE_BASE/product/21.0.0/dbhome_1/jdk/bin/java \
-jar $ORACLE_BASE/product/21.0.0/dbhome_1/rdbms/admin/autoupgrade.jar \
-config /tmp/config.txt -mode deploy
AutoUpgrade tool launched with default options
Processing config file ...
+--------------------------------+
| Starting AutoUpgrade execution |
+--------------------------------+
1 databases will be processed
Type 'help' to list console commands
upg>
upg>
lsj
+----+-------+---------+---------+-------+--------------+--------+----------------+
|Job#|DB_NAME| STAGE|OPERATION| STATUS| START_TIME| UPDATED| MESSAGE|
+----+-------+---------+---------+-------+--------------+--------+----------------+
| 102| mydb|DBUPGRADE|EXECUTING|RUNNING|21/08/22 07:44|07:49:08|22%Upgraded MYDB|
+----+-------+---------+---------+-------+--------------+--------+----------------+
Total jobs 1
upg>
status -job 102
Progress
-----------------------------------
Start time: 21/08/22 07:44
Elapsed (min): 6
End time: N/A
Last update: 2021-08-22T07:49:08.827
Stage: DBUPGRADE
Operation: EXECUTING
Status: RUNNING
Pending stages: 7
Stage summary:
SETUP <1 min
GRP <1 min
PREUPGRADE <1 min
PRECHECKS <1 min
PREFIXUPS <1 min
DRAIN 1 min
DBUPGRADE 4 min (IN PROGRESS)
Job Logs Locations
-----------------------------------
Logs Base: /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb
Job logs: /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102
Stage logs: /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/dbupgrade
TimeZone: /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/temp
Additional information
-----------------------------------
Details:
[Upgrading] is [22%] completed for [mydb-mydb]
+---------+-------------+
|CONTAINER| PERCENTAGE|
+---------+-------------+
| MYDB|UPGRADE [22%]|
+---------+-------------+
Error Details:
None
upg>
upg> lsj
+----+-------+---------+---------+-------+--------------+--------+----------------------------+
|Job#|DB_NAME| STAGE|OPERATION| STATUS| START_TIME| UPDATED| MESSAGE|
+----+-------+---------+---------+-------+--------------+--------+----------------------------+
| 102| mydb|PREFIXUPS|EXECUTING|RUNNING|21/08/22 07:44|07:44:28|Loading database information|
+----+-------+---------+---------+-------+--------------+--------+----------------------------+
Total jobs 1
upg> lsj
+----+-------+-----+---------+-------+--------------+--------+------------------+
|Job#|DB_NAME|STAGE|OPERATION| STATUS| START_TIME| UPDATED| MESSAGE|
+----+-------+-----+---------+-------+--------------+--------+------------------+
| 102| mydb|DRAIN|EXECUTING|RUNNING|21/08/22 07:44|07:45:31|Executing describe|
+----+-------+-----+---------+-------+--------------+--------+------------------+
Total jobs 1
upg> lsj
+----+-------+---------+---------+-------+--------------+--------+-------+
|Job#|DB_NAME| STAGE|OPERATION| STATUS| START_TIME| UPDATED|MESSAGE|
+----+-------+---------+---------+-------+--------------+--------+-------+
| 102| mydb|DBUPGRADE|EXECUTING|RUNNING|21/08/22 07:44|07:46:03|Running|
+----+-------+---------+---------+-------+--------------+--------+-------+
Total jobs 1
upg> lsj
+----+-------+---------+---------+-------+--------------+--------+----------------+
|Job#|DB_NAME| STAGE|OPERATION| STATUS| START_TIME| UPDATED| MESSAGE|
+----+-------+---------+---------+-------+--------------+--------+----------------+
| 102| mydb|DBUPGRADE|EXECUTING|RUNNING|21/08/22 07:44|07:55:09|52%Upgraded MYDB|
+----+-------+---------+---------+-------+--------------+--------+----------------+
Total jobs 1
upg> lsj
+----+-------+-------------+---------+-------+--------------+--------+-------------------+
|Job#|DB_NAME| STAGE|OPERATION| STATUS| START_TIME| UPDATED| MESSAGE|
+----+-------+-------------+---------+-------+--------------+--------+-------------------+
| 102| mydb|NONCDBTOPDBXY|EXECUTING|RUNNING|21/08/22 07:44|08:02:46|noncdb_to_pdb - 64%|
+----+-------+-------------+---------+-------+--------------+--------+-------------------+
Total jobs 1
upg> lsj
+----+-------+----------+---------+-------+--------------+--------+-------------+
|Job#|DB_NAME| STAGE|OPERATION| STATUS| START_TIME| UPDATED| MESSAGE|
+----+-------+----------+---------+-------+--------------+--------+-------------+
| 102| mydb|POSTFIXUPS|EXECUTING|RUNNING|21/08/22 07:44|08:09:53|Remaining 2/4|
+----+-------+----------+---------+-------+--------------+--------+-------------+
Total jobs 1
upg>
upg> Job 102 completed
------------------- Final Summary --------------------
Number of databases [ 1 ]
Jobs finished [1]
Jobs failed [0]
Jobs pending [0]
Please check the summary report at:
/u01/app/oracle/cfgtoollogs/autoupgrade/cfgtoollogs/upgrade/auto/status/status.html
/u01/app/oracle/cfgtoollogs/autoupgrade/cfgtoollogs/upgrade/auto/status/status.log
==========================================
Autoupgrade Summary Report
==========================================
[Date] Sun Aug 22 08:11:31 UTC 2021
[Number of Jobs] 1
==========================================
[Job ID] 102
==========================================
[DB Name] mydb
[Version Before Upgrade] 19.12.0.0.0
[Version After Upgrade] 21.3.0.0.0
------------------------------------------
[Stage Name] GRP
[Status] SUCCESS
[Start Time] 2021-08-22 07:44:09
[Duration] 0:00:01
[Detail] Please drop the following GRPs after Autoupgrade completes:
AUTOUPGRADE_9212_MYDB1912000
------------------------------------------
[Stage Name] PREUPGRADE
[Status] SUCCESS
[Start Time] 2021-08-22 07:44:11
[Duration] 0:00:00
[Log Directory] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/preupgrade
------------------------------------------
[Stage Name] PRECHECKS
[Status] SUCCESS
[Start Time] 2021-08-22 07:44:11
[Duration] 0:00:16
[Log Directory] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/prechecks
[Detail] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/prechecks/mydb_preupgrade.log
Precheck passed and no manual intervention needed
------------------------------------------
[Stage Name] PREFIXUPS
[Status] SUCCESS
[Start Time] 2021-08-22 07:44:27
[Duration] 0:00:15
[Log Directory] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/prefixups
------------------------------------------
[Stage Name] DRAIN
[Status] SUCCESS
[Start Time] 2021-08-22 07:44:42
[Duration] 0:01:19
[Log Directory] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/drain
------------------------------------------
[Stage Name] DBUPGRADE
[Status] SUCCESS
[Start Time] 2021-08-22 07:46:02
[Duration] 0:15:14
[Log Directory] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/dbupgrade
------------------------------------------
[Stage Name] NONCDBTOPDBXY
[Status] SUCCESS
[Start Time] 2021-08-22 08:01:16
[Duration] 0:08:25
------------------------------------------
[Stage Name] POSTCHECKS
[Status] SUCCESS
[Start Time] 2021-08-22 08:09:42
[Duration] 0:00:09
[Log Directory] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/postchecks
[Detail] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/postchecks/mydb_postupgrade.log
------------------------------------------
[Stage Name] POSTFIXUPS
[Status] SUCCESS
[Start Time] 2021-08-22 08:09:51
[Duration] 0:01:40
[Log Directory] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/postfixups
------------------------------------------
[Stage Name] POSTUPGRADE
[Status] SUCCESS
[Start Time] 2021-08-22 08:11:31
[Duration] 0:00:00
[Log Directory] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/postupgrade
------------------------------------------
[Stage Name] SYSUPDATES
[Status] SUCCESS
[Start Time] 2021-08-22 08:11:31
[Duration] 0:00:00
[Log Directory] /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/sysupdates
------------------------------------------
Upgrade Summary: /u01/app/oracle/cfgtoollogs/autoupgrade/mydb/mydb/102/dbupgrade/upg_summary.log
export ORACLE_HOME=$ORACLE_BASE/product/21.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=cdb1
sqlplus / as sysdba <<EOF
alter pluggable database mydb save state;
shutdown immediate;
startup;
show pdbs
exit;
EOF1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
export ORACLE_HOME=/u01/app/oracle/product/21.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=cdb1
#dbca -silent -deleteDatabase -sourceDB cdb1 -sysDBAUserName sys -sysDBAPassword SysPassword1
dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname cdb1 -sid cdb1 -responseFile NO_VALUE \
-characterSet AL32UTF8 \
-sysPassword SysPassword1 \
-systemPassword SysPassword1 \
-createAsContainerDatabase true \
-numberOfPDBs 0 \
-databaseType MULTIPURPOSE \
-memoryMgmtType auto_sga \
-totalMemory 1536 \
-storageType FS \
-datafileDestination "/u02/oradata/" \
-redoLogFileSize 50 \
-emConfiguration NONE \
-ignorePreReqs
sqlplus / as sysdba <<EOF
alter system set db_recovery_file_dest_size=40g;
alter system set db_recovery_file_dest='/u01/app/oracle/fast_recovery_area';
alter system set db_create_file_dest = '/u02/oradata';
shutdown immediate;
startup mount;
alter database archivelog;
alter database open;
exit;
EOF
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=mydb
#dbca -silent -deleteDatabase -sourceDB mydb -sysDBAUserName sys -sysDBAPassword SysPassword1
dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname mydb -sid mydb -responseFile NO_VALUE \
-characterSet AL32UTF8 \
-sysPassword SysPassword1 \
-systemPassword SysPassword1 \
-createAsContainerDatabase false \
-databaseType MULTIPURPOSE \
-memoryMgmtType auto_sga \
-totalMemory 1536 \
-storageType FS \
-datafileDestination "/u02/oradata/" \
-redoLogFileSize 50 \
-emConfiguration NONE \
-ignorePreReqs
sqlplus / as sysdba <<EOF
alter system set db_recovery_file_dest_size=40g;
alter system set db_recovery_file_dest='/u01/app/oracle/fast_recovery_area';
alter system set db_create_file_dest = '/u02/oradata';
shutdown immediate;
startup mount;
alter database archivelog;
alter database open;
exit;
EOFPlease to add comments
No comments yet. Be the first to comment!