Restore OCR and correct Software Patch Level
May 6, 2020 Leave a comment
Software patch level crsctl query crs softwarepatch
and active patch level crsctl query crs activersion -f
are introduced to ensure GI home has identical patches on all nodes.
It’s highly recommended to manually backup OCR using # ocrconfig -manualbackup
before and after applying a patch or making configurtion changes (adding resources into CRS).
When you apply a patch to GI home, the software patch level will be updated on each node. On the last node, the active patch level will be updated for the cluster.
The patch level is stored in OCR, so if we restore old OCR backup, we need to update the patch level inside it using Oracle provided commands.
- Try to find patchlevel in the OCR backup that matches to activeversion:
[root@rac1 ~]# ocrdump -stdout -keyname SYSTEM.version.activeversion.patchlevel -backupfile +GRID:/marirac/OCRBACKUP/backup_20200425_171539.ocr.266.1038676539 ... [SYSTEM.version.activeversion.patchlevel] UB4 (10) : 2701864972 ...
If backup file is located on filesystem, then need to replace +GRID:/marirac/OCRBACKUP/backup_20200425_171539.ocr.266.1038676539
with the full path of the file.
Keep copies of OCR backups on filesystem also using asmcmd cp
command.
2. Restore OCR backup
a) Stop crs services on all nodes
b) On one of the node, start cluster in exclusive and restore OCR backup:
# crsctl stop crs -f # crsctl start crs -excl -nocrs # ocrconfig -restore /tmp/OCR/OCR_BACKUP_FILE # crsctl stop crs -f
3. Correct software and active patch levels
a) Keep CRS down on all nodes
b) Start CRS on the 1st node, run clscfg
, and check softwarepatch
# crsctl start crs -wait # clscfg -patch # crsctl query crs softwarepatch
c) On the last node (do not run on other node, only from last node), issue the following command:
# crsctl stop rollingpatch
d) Verify that active patch level was updated
# crsctl query crs activeversion -f