The following blog will provide the necessary steps to upgrade the Grid Infrastructure from 12.1 to 12.2, for a Standalone Server.
One of the new features of GI 12.2 is the usage of the AFD (Oracle ASMFD Filter Driver).
Assumptions :
You have installed Oracle GI 12.1 as grid user You have installed Oracle Database 12.1 as oracle user You have configured the groups asmadmin,asmoper,asmdba You installed oracle-rdbms-server-12cr2-preinstall rpm You patched your Oracle GI to PSU July 2017 (combo patch 25901062 to patch Oracle stack 12.1 , GI & RDBMS) [root]mkdir /u01/app/grid/product/12.2.0/grid/ [root]chown -R grid:oinstall /u01/app/grid/product/12.2.0/grid/ --stop all dbs that are using ASM [oracle]srvctl stop database -d ORCL
Installation : Tasks
[grid]cd /u01/app/grid/product/12.2.0/grid/ [grid]unzip /stage/linuxx64_12201_grid_home.zip [grid]./gridSetup.sh Choose Upgrade Oracle Grid Infrastructure option. Confirm that all Oracle DBs using ASM are stopped. Check : Oracle base : /u01/app/grid/ Software Location : /u01/app/grid/product/12.2.0/grid/ Uncheck "Automatically run configuration scripts". Is not recommanded by Oracle, but if you are doing like that is very possible that your upgrade process is dying without any output. So at the right moment you will be asked to run rootUpgrade.sh maually. Click Next and validate that all the pre-requirements are confirmed. Monitor the progress and run the script rootUpgrade.sh when is prompted Once your action completed succesfully: [grid@dbisrv04 ~]$ . oraenv ORACLE_SID = [grid] ? +ASM The Oracle base has been set to /u01/app/grid [grid@dbisrv04 ~]$ crsctl query has softwareversion Oracle High Availability Services version on the local node is [12.2.0.1.0]
Migrating ASM disks from ASMlib to AFD : Tasks
Oracle ASM Filter Driver (Oracle ASMFD) simplifies the configuration and management of disk devices by eliminating the need to rebind disk devices used with Oracle ASM each time the system is restarted.
Oracle ASM Filter Driver (Oracle ASMFD) is a kernel module that resides in the I/O path of the Oracle ASM disks. Oracle ASM uses the filter driver to validate write I/O requests to Oracle ASM disks.
Step1:
[grid@dbisrv04 ~]$ asmcmd dsget parameter: profile: [grid@dbisrv04 ~]$ asmcmd dsset '/dev/xvda*','ORCL:*','AFD:*' [grid@dbisrv04 ~]$ asmcmd dsget parameter:/dev/xvda*, ORCL:*, AFD:* profile:/dev/xvda*,ORCL:*,AFD:*
Step2:
[root]export ORACLE_HOME=/u01/app/grid/product/12.2.0/grid/ [root]$GRID_HOME/bin/crsctl stop has -f
Step3:
root@dbisrv04 ~]# $ORACLE_HOME/bin/asmcmd afd_configure ASMCMD-9524: AFD configuration failed 'ERROR: ASMLib deconfiguration failed' Cause: acfsload is running.To configure AFD oracleasm and acfsload must be stopped Solution: stop acfsload and rerun asmcmd afd_configure [root@dbisrv04 ~]# oracleasm exit [root@dbisrv04 ~]# $ORACLE_HOME/bin/acfsload stop root@dbisrv04 ~]# $ORACLE_HOME/bin/asmcmd afd_configure AFD-627: AFD distribution files found. AFD-634: Removing previous AFD installation. AFD-635: Previous AFD components successfully removed. AFD-636: Installing requested AFD software. AFD-637: Loading installed AFD drivers. AFD-9321: Creating udev for AFD. AFD-9323: Creating module dependencies - this may take some time. AFD-9154: Loading 'oracleafd.ko' driver. AFD-649: Verifying AFD devices. AFD-9156: Detecting control device '/dev/oracleafd/admin'. AFD-638: AFD installation correctness verified. Modifying resource dependencies - this may take some time.
Step4:
[grid@dbisrv04 ~]$ $ORACLE_HOME/bin/asmcmd afd_state ASMCMD-9526: The AFD state is 'LOADED' and filtering is 'ENABLED' on host 'dbisrv04.localdomain'
Step5:
[root]$ORACLE_HOME/bin/crsctl stop has
Step6:
[grid@dbisrv04 ~]$ $ORACLE_HOME/bin/asmcmd afd_refresh [grid@dbisrv04 ~]$ $ORACLE_HOME/bin/asmcmd afd_lsdsk -------------------------------------------------------------------------------- Label Filtering Path ================================================================================ DISK01 ENABLED /dev/sdf1 DISK02 ENABLED /dev/sdg1 DISK03 ENABLED /dev/sdh1 DISK04 ENABLED /dev/sdi1 DISK05 ENABLED /dev/sdj1 DISK06 ENABLED /dev/sdk1 DISK07 ENABLED /dev/sdl1 DISK08 ENABLED /dev/sdm1 DISK09 ENABLED /dev/sdn1
Step7:
[root]$ORACLE_HOME/bin/crsctl start has [grid@dbisrv04 ~]$ $ORACLE_HOME/bin/asmcmd afd_dsset '/dev/sd*'
Step8:
[root]$ORACLE_HOME/bin/crsctl stop has -f [root]$GRID_HOME/bin/asmcmd afd_scan [root]$GRID_HOME/bin/asmcmd afd_refresh
Step9:
[root]$ORACLE_HOME/bin/crsctl start has [root@dbisrv04 ~]# /u01/app/grid/product/12.2.0/grid/bin/asmcmd afd_lsdsk -------------------------------------------------------------------------------- Label Filtering Path ================================================================================ DISK01 ENABLED /dev/sdf1 DISK02 ENABLED /dev/sdg1 DISK03 ENABLED /dev/sdh1 DISK04 ENABLED /dev/sdi1 DISK05 ENABLED /dev/sdj1 DISK06 ENABLED /dev/sdk1 DISK07 ENABLED /dev/sdl1 DISK08 ENABLED /dev/sdm1 DISK09 ENABLED /dev/sdn1
Step10:
select name,label,path from v$asm_disk;SQL> SQL> SQL> NAME LABEL PATH ---------- -------------------- -------------------- DISK04 DISK04 AFD:DISK04 DISK03 DISK03 AFD:DISK03 DISK02 DISK02 AFD:DISK02 DISK01 DISK01 AFD:DISK01 DISK07 DISK07 AFD:DISK07 DISK05 DISK05 AFD:DISK05 DISK06 DISK06 AFD:DISK06 DISK09 DISK09 AFD:DISK09 DISK08 DISK08 AFD:DISK08
Step11: Confirm your AFD is loaded
[root@dbisrv04 ~]# /u01/app/grid/product/12.2.0/grid/bin/crsctl stat res -t -------------------------------------------------------------------------------- Name Target State Server State details -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.DATA.dg ONLINE ONLINE dbisrv04 STABLE ora.DATA2.dg ONLINE ONLINE dbisrv04 STABLE ora.LISTENER.lsnr ONLINE ONLINE dbisrv04 STABLE ora.RECO.dg ONLINE ONLINE dbisrv04 STABLE ora.asm ONLINE ONLINE dbisrv04 Started,STABLE ora.ons OFFLINE OFFLINE dbisrv04 STABLE -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.cssd 1 ONLINE ONLINE dbisrv04 STABLE ora.diskmon 1 OFFLINE OFFLINE STABLE ora.driver.afd 1 ONLINE ONLINE dbisrv04 STABLE ora.evmd 1 ONLINE ONLINE dbisrv04 STABLE ora.orcl.db 1 ONLINE ONLINE dbisrv04 Open,HOME=/u01/app/o racle/product/12.2.0 /dbhome_1,STABLE
——————————————————————————–
Step 11b: Introduce new disks with AFD
[root]. oraenv [root]+ASM [root@dbisrv04 ~]# asmcmd afd_label DISK10 /dev/sdo1 --init ASMCMD-9521: AFD is already configured [root@dbisrv04 ~]# asmcmd afd_label DISK10 /dev/sdo1 [root@dbisrv04 ~]# asmcmd afd_lslbl [root@dbisrv04 ~]# /u01/app/grid/product/12.2.0/grid/bin/asmcmd afd_lsdsk -------------------------------------------------------------------------------- Label Filtering Path ================================================================================ DISK01 ENABLED /dev/sdf1 DISK02 ENABLED /dev/sdg1 DISK03 ENABLED /dev/sdh1 DISK04 ENABLED /dev/sdi1 DISK05 ENABLED /dev/sdj1 DISK06 ENABLED /dev/sdk1 DISK07 ENABLED /dev/sdl1 DISK08 ENABLED /dev/sdm1 DISK09 ENABLED /dev/sdn1 DISK10 ENABLED /dev/sdo1
Step 12: Erase Oracle ASMLib
[root] yum erase oracleasm-support.x86_64
[root] yum erase oracleasmlib.x86_64