- Grid Infrastructure Installation and Upgrade Guide
- Upgrading Oracle Grid Infrastructure
- Downgrading Oracle Clusterware to an Earlier Release
- Downgrading Oracle Clusterware to 18c
- Downgrading Oracle Domain Services Cluster to 18c
Downgrading Oracle Domain Services Cluster to 18c
Use this procedure to downgrade Oracle Domain Services Cluster to Oracle Grid Infrastructure 18c after a successful upgrade.
- As griduser, downgrade the Management Database to Oracle Grid Infrastructure 18c:- 
                              Manually copy the most recent time zone files from 19c Grid home to 18c Grid home, where timezlrg_numberis the name of the most recenttimzlrgfile andtimezone_numberis the name of the most recenttimezonefile:$ cp $ORACLE_HOME/oracore/zoneinfo/timezlrg_number.dat /u01/app/18.0.0/grid/oracore/zoneinfo/timezlrg_number.dat $ cp $ORACLE_HOME/oracore/zoneinfo/timezone_number.dat /u01/app/18.0.0/grid/oracore/zoneinfo/timezone_number.dat
- 
                              Downgrade application schema using the following command syntax from 19c Grid home: $ $ORACLE_HOME/bin/mgmtua downgrade -local -oldOracleHome /u01/app/18.0.0/grid -skipSystemSchemaDowngrade
- 
                              Disable and stop MGMTDB resource from 19c Grid home: $ cd $ORACLE_HOME/bin $ ./srvctl disable mgmtdb $ ./srvctl stop mgmtdb
- 
                              Downgrade system schema using the following procedure: - 
                                    Set ORACLE_SIDenvironment variable for 19c Grid home:$ export ORACLE_SID=-MGMTDB $ cd $ORACLE_HOME/bin
- 
                                    Start CDB and all PDBs in downgrade mode: $ ./sqlplus / as sysdba SQL> startup downgrade SQL> alter pluggable database all open downgrade; SQL> exit
- 
                                    Downgrade 19c Management Database using the following command syntax, where /u01/app/grid2is the Oracle base for Oracle Grid Infrastructure 19c:$ $ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -d /u01/app/grid2 -e -l /u01/app/grid2/cfgtoollogs/mgmtua -b mgmtdowngrade -r $ORACLE_HOME/rdbms/admin/catdwgrd.sql
- 
                                    Set ORACLE_HOMEandORACLE_SIDenvironment variables for 18c Grid home:$ export ORACLE_HOME=/u01/app/18.0.0/grid/ $ export ORACLE_SID=-MGMTDB $ cd $ORACLE_HOME/bin
- 
                                    Start CDB and all PDBs in upgrade mode: $ ./sqlplus / as sysdba SQL> shutdown immediate SQL> startup upgrade SQL> alter pluggable database all open upgrade; SQL> exit
- 
                                    Run catrelodscript for 18c Management Database using the following command syntax, where/u01/app/gridis the Oracle base for Oracle Grid Infrastructure 18c:$ $ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -d /u01/app/grid -e -l /u01/app/grid/cfgtoollogs/mgmtua -b mgmtdowngrade $ORACLE_HOME/rdbms/admin/catrelod.sql
- 
                                    Recompile all invalid objects after downgrade using the following command syntax from 18c Grid home: $ $ORACLE_HOME/perl/bin/perl $ORACLE_HOME/rdbms/admin/catcon.pl -d /u01/app/grid -e -l /u01/app/grid/cfgtoollogs/mgmtua -b mgmtdowngrade $ORACLE_HOME/rdbms/admin/utlrp.sql
 
- 
                                    
- 
                              Manually stop the Management Database: $ ./sqlplus / as sysdba SQL> shutdown immediate SQL> exit
 
- 
                              
- As rootuser, use the following command syntaxrootcrs.sh -downgradefrom 19c Grid home to downgrade Oracle Grid Infrastructure on all nodes, in any sequence. For example:# $ORACLE_HOME/crs/install/rootcrs.sh -downgradeRun this command from a directory that has write permissions for the Oracle Grid Infrastructure installation user. You can run the downgrade script in parallel on all cluster nodes, but one. 
- As rootuser, downgrade the last node after you downgrade all other nodes:# $ORACLE_HOME/crs/install/rootcrs.sh -downgrade
- As griduser, remove Oracle Grid Infrastructure 19c Grid home as the active Oracle Clusterware home:- 
                              On any of the cluster member nodes where the rootupgrade.shscript has run successfully, log in as the Oracle Grid Infrastructure installation owner.
- 
                              Use the following command to start the installer, where /u01/app/19.0.0/gridis the location of the new (upgraded) Grid home:$ cd $ORACLE_HOME/oui/bin ./runInstaller -nowait -waitforcompletion -ignoreSysPrereqs -updateNodeList -silent CRS=false ORACLE_HOME=/u01/app/19.0.0/grid "CLUSTER_NODES=node1,node2,node3" -doNotUpdateNodeListAdd the flag -cfsif the Grid home is a shared home.
 
- 
                              
- As rootuser, start the 18c Oracle Clusterware stack on all nodes.# crsctl start crs
- As griduser, set Oracle Grid Infrastructure 18c Grid home as the active Oracle Clusterware home:- 
                              On any of the cluster member nodes where the rootupgradescript has run successfully, log in as the Oracle Grid Infrastructure installation owner.
- 
                              Use the following command to start the installer, where the path you provide for ORACLE_HOMEis the location of the home directory from the earlier Oracle Clusterware installation.$ cd $ORACLE_HOME/oui/bin $ ./runInstaller -nowait -waitforcompletion -ignoreSysPrereqs -updateNodeList -silent CRS=true ORACLE_HOME=/u01/app/18.0.0/grid "CLUSTER_NODES=node1,node2,node3"
 
- 
                              
- As griduser, downgrade CHA models from any node where the Grid Infrastructure stack is running from 18c Grid home and Management Database andochadare up:$ ./srvctl stop cha $ ./chactl import model -file /u01/app/18.0.0/grid/cha/model/os_gold.svm -name DEFAULT_CLUSTER $ ./chactl import model -file /u01/app/18.0.0/grid/cha/model/db_gold.svm -name DEFAULT_DB $ ./srvctl start chaIn the example above, DEFAULT_CLUSTERandDEFAULT_DBare function names that you must pass as values.
Parent topic: Downgrading Oracle Clusterware to 18c