This post will go though the steps needed to upgrade an Oracle Grid High Availability Services (HAS) from version 12c (12.1.0.2) to 19c (19.13.0) on a Linux environment.

1:- As per document Doc ID 2539751.1, Patch 28553832 is a prerequisite for both GI and DB Upgrade.

	[oracle@persephone ~]$ /u01/app/oracle/product/12.1.0/grid/OPatch/opatch lsinventory | grep 28553832
		21082737, 21694632, 27309269, 23095976, 20115586, 28553832, 20883009
	[oracle@persephone ~]$

2:- Create a directory and copy 19c grid software

	[root@persephone ~]# mkdir -p /u01/app/grid/product/19c/grid
	[root@persephone ~]# chown -R oracle:oinstall /u01/app/grid/product/19c
	[root@persephone ~]# cp -p /PATCHES/19c/LINUX.X64_193000_grid_home.zip /u01/app/grid/product/19c/grid
	[root@persephone ~]#
	
	
	[oracle@persephone ~]$ cd /u01/app/grid/product/19c/grid
	[oracle@persephone grid]$ unzip -q LINUX.X64_193000_grid_home.zip

3:- Update OPATCH to 19c home (p6880880_190000_Linux-x86-64.zip)

	[root@persephone ~]# mv /u01/app/grid/product/19c/grid/OPatch /u01/app/grid/product/19c/grid/OPatch_old
	[root@persephone ~]# cp -pR /PATCHES/19c/OPatch /u01/app/grid/product/19c/grid
	[root@persephone ~]#
	
	[root@persephone ~]# /u01/app/grid/product/19c/grid/OPatch/opatch version
	OPatch Version: 12.2.0.1.29
	
	OPatch succeeded.
	[root@persephone ~]#

4:- Apply latest RU to new 19c home

** We are applying "GI RELEASE UPDATE 19.13.0.0.0" 

	[oracle@persephone 19c]$ ls -ltd /PATCHES/19c/33182768
	drwxr-x---. 8 oracle oinstall 4096 Oct 15 14:17 /PATCHES/19c/33182768
	[oracle@persephone 19c]$
	
	
	[oracle@persephone ~]$ cd /u01/app/grid/product/19c/grid
	[oracle@persephone grid]$ ls -ltd /PATCHES/19c/33182768
	drwxr-x---. 8 oracle oinstall 4096 Oct 15 14:17 /PATCHES/19c/33182768
	[oracle@persephone grid]$  ./gridSetup.sh -silent -applyRU /PATCHES/19c/33182768
	Preparing the home to patch...
	Applying the patch /PATCHES/19c/33182768...
	Successfully applied the patch.
	The log can be found at: /u01/app/oraInventory/logs/GridSetupActions2022-04-13_11-49-23AM/installerPatchActions_2022-04-13_11-49-23AM.log
	Launching Oracle Grid Infrastructure Setup Wizard...
	
	[FATAL] [INS-40426] Grid installation option has not been specified.
	ACTION: Specify the valid installation option.
	[oracle@persephone grid]$


	[oracle@persephone ~]$ /u01/app/grid/product/19c/grid/OPatch/opatch lspatches -oh  /u01/app/grid/product/19c/grid
	33239955;TOMCAT RELEASE UPDATE 19.0.0.0.0 (33239955)
	33208123;OCW RELEASE UPDATE 19.13.0.0.0 (33208123)
	33208107;ACFS RELEASE UPDATE 19.13.0.0.0 (33208107)
	33192793;Database Release Update : 19.13.0.0.211019 (33192793)
	32585572;DBWLM RELEASE UPDATE 19.0.0.0.0 (32585572)
	
	OPatch succeeded.
	[oracle@persephone ~]$

5:- Run the cluster verification utility

** review output for any failures

	[oracle@persephone grid]$ pwd
	/u01/app/grid/product/19c/grid
	[oracle@persephone grid]$ ./runcluvfy.sh stage -pre hacfg -fixup -verbose
	...
	...
	Verifying Package: policycoreutils-python-2.5-17 ...PASSED
	Verifying Users With Same UID: 0 ...PASSED
	Verifying Current Group ID ...PASSED
	Verifying Root user consistency ...
	Node Name                             Status
	------------------------------------  ------------------------
	persephone                            passed
	Verifying Root user consistency ...PASSED
	
	Pre-check for Oracle Restart configuration was successful.
	
	CVU operation performed:      stage -pre hacfg
	Date:                         13-Apr-2022 12:08:13
	CVU home:                     /u01/app/grid/product/19c/grid/
	User:                         oracle
	[oracle@persephone grid]$

6:- Dry-run upgrade

** If your enviroment is a RAC, youcan execute execute a dry-run upgrade before the actual upgrade. Dry-run upgrades verify all the steps similar to a real upgrade without making any real changes.

[oracle@persephone ~]$ /u01/app/grid/product/19.3.0/grid/gridSetup.sh -dryRunForUpgrade


Since we are on a Standalone server, option is not available to us now:

"gridSetup.sh -dryRunForUpgrade gives "[FATAL] [INS-45516] There Is No Active Oracle Clusterware Home On This Cluster" (Doc ID 2578053.1)"
"Dry-run upgrades are not supported on Oracle Grid Infrastructure for a standalone server (Oracle Restart) configurations."

7:- Prepare response file

**response file is esential if we want to perform a Silent instalation.

We can use this example:

	[oracle@persephone ~]$ cat /u01/app/grid/product/19c/grid/install/response/grid19_upgr.rsp
	oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v19.0.0
	INVENTORY_LOCATION=/opt/oracle/oraInventory
	oracle.install.option=UPGRADE
	ORACLE_BASE=/opt/oracle
	oracle.install.crs.config.scanType=LOCAL_SCAN
	oracle.install.crs.config.ClusterConfiguration=STANDALONE
	oracle.install.crs.config.configureAsExtendedCluster=false
	oracle.install.crs.config.gpnp.configureGNS=false
	oracle.install.crs.config.ignoreDownNodes=false
	oracle.install.config.managementOption=NONE
	oracle.install.crs.rootconfig.executeRootScript=false
	oracle.install.crs.rootconfig.configMethod=SUDO
	oracle.install.crs.rootconfig.sudoPath=/usr/bin/sudo
	oracle.install.crs.rootconfig.sudoUserName=oracle
	[oracle@persephone ~]$

8:- Upgrade GRID:

[oracle@persephone ~]$ crsctl query has releaseversion
Oracle High Availability Services release version on the local node is [12.1.0.2.0]
[oracle@persephone ~]$  crsctl query has softwareversion
Oracle High Availability Services version on the local node is [12.1.0.2.0]
[oracle@persephone ~]$


[oracle@persephone ~]$  unset ORACLE_BASE
[oracle@persephone ~]$  unset ORACLE_HOME
[oracle@persephone ~]$ unset ORACLE_SID
[oracle@persephone ~]$  /u01/app/grid/product/19c/grid/gridSetup.sh -silent -responseFile /u01/app/grid/product/19c/grid/install/response/grid19_upgr.rsp
Launching Oracle Grid Infrastructure Setup Wizard...

[WARNING] [INS-40436] Installer has detected an earlier version of Oracle Automatic Storage Management (ASM) Instance configured. Before proceeding with the upgrade you must shutdown all Oracle Databases that are using Oracle ASM for storage.

You may ignore this message and continue with the upgrade, if the database(s) are already in shutdown state.
[WARNING] [INS-13014] Target environment does not meet some optional requirements.
   CAUSE: Some of the optional prerequisites are not met. See logs for details. /u01/app/oraInventory/logs/GridSetupActions2022-04-13_12-49-31PM/gridSetupActions2022-04-13_12-49-31PM.log
   ACTION: Identify the list of failed prerequisite checks from the log: /u01/app/oraInventory/logs/GridSetupActions2022-04-13_12-49-31PM/gridSetupActions2022-04-13_12-49-31PM.log. Then either from the log file or from installation manual find the appropriate configuration to meet the prerequisites and fix it manually.
The response file for this session can be found at:
 /u01/app/grid/product/19c/grid/install/response/grid_2022-04-13_12-49-31PM.rsp

You can find the log of this install session at:
 /u01/app/oraInventory/logs/GridSetupActions2022-04-13_12-49-31PM/gridSetupActions2022-04-13_12-49-31PM.log

As a root user, execute the following script(s):
        1. /u01/app/grid/product/19c/grid/rootupgrade.sh

Execute /u01/app/grid/product/19c/grid/rootupgrade.sh on the following nodes:
[persephone]



Successfully Setup Software with warning(s).
As install user, execute the following command to complete the configuration.
        /u01/app/grid/product/19c/grid/gridSetup.sh -executeConfigTools -responseFile /u01/app/grid/product/19c/grid/install/response/grid19_upgr.rsp [-silent]


[oracle@persephone ~]$


[root@persephone ~]# /u01/app/grid/product/19c/grid/rootupgrade.sh
Check /u01/app/grid/product/19c/grid/install/root_persephone_2022-04-13_13-31-10-635383966.log for the output of root script
[root@persephone ~]#





[oracle@persephone ~]$ /u01/app/grid/product/19c/grid/gridSetup.sh -executeConfigTools -responseFile /u01/app/grid/product/19c/grid/install/response/grid19_upgr.rsp -silent
Launching Oracle Grid Infrastructure Setup Wizard...

You can find the logs of this session at:
/u01/app/oraInventory/logs/GridSetupActions2022-04-13_01-42-04PM

You can find the log of this install session at:
 /u01/app/oraInventory/logs/UpdateNodeList2022-04-13_01-42-04PM.log
You can find the log of this install session at:
 /u01/app/oraInventory/logs/UpdateNodeList2022-04-13_01-42-04PM.log
Successfully Configured Software.
[oracle@persephone ~]$

9:- Verify new version:

	[oracle@persephone ~]$ grep -i +asm /etc/oratab
	+ASM:/u01/app/grid/product/19c/grid:N           # line added by Agent
	[oracle@persephone ~]$
	
	
	[oracle@persephone ~]$  crsctl query has releaseversion
	Oracle High Availability Services release version on the local node is [19.0.0.0.0]
	[oracle@persephone ~]$ crsctl query has softwareversion
	Oracle High Availability Services version on the local node is [19.0.0.0.0]
	[oracle@persephone ~]$ 

	[oracle@persephone ~]$ ps -ef | grep -i grid
	oracle   27693     1  2 13:50 ?        00:00:04 /u01/app/grid/product/19c/grid/bin/ohasd.bin reboot
	oracle   27902     1  1 13:51 ?        00:00:02 /u01/app/grid/product/19c/grid/bin/oraagent.bin
	oracle   27929     1  0 13:51 ?        00:00:00 /u01/app/grid/product/19c/grid/bin/evmd.bin
	oracle   27939     1  0 13:51 ?        00:00:00 /u01/app/grid/product/19c/grid/bin/tnslsnr LISTENER -no_crs_notify -inherit
	oracle   28014     1  0 13:51 ?        00:00:00 /u01/app/grid/product/19c/grid/bin/cssdagent
	oracle   28055     1  0 13:51 ?        00:00:01 /u01/app/grid/product/19c/grid/bin/ocssd.bin
	oracle   29070 30493  0 13:54 pts/2    00:00:00 grep --color=auto -i grid
	[oracle@persephone ~]$
Last modified: 16 June 2022

Author

Comments

Vimal Rathinasamy 

Thanks for the post, would have been great had it been mentioned that it is related to stand alone and not RAC. Thanks again!

Write a Reply or Comment

Your email address will not be published.