Steps to Restore Oracle Grid Infrastructure (GI) Home on a Bad Node

Note: Modify the paths according to your environment. Ensure that permissions, ownership, and group settings match the good node for consistency.

Step 1: Create a Tarball of Grid Home from a Good Node

On the good node, create a compressed tar archive of the Oracle Grid Infrastructure (GI) home as per below command:

tar -cvzf /tmp/grid_home_backup.tar.gz  /grid19c/app/product/19.3.0/grid_home

Step 2: Copy the Tarball to the Bad Node

Transfer the tarball to the affected (bad) node using scp .Modify the hostname (badnode) and username (grid) as needed.

scp /tmp/grid_home_backup.tar.gz grid@badnode:/tmp/

Step 3: Remove the Existing Oracle GI Home on the Bad Node

On the bad node, remove the current GI home to avoid conflicts:

Ensure that you are removing the correct directory to prevent unintended data loss.

rm -rf   /grid19c/app/product/19.3.0/grid_home

Step 4: Extract the Tarball and Restore Permissions

Extract the tarball into the Grid Infrastructure home:

tar -xvzf /tmp/grid_home_backup.tar.gz -C /grid19c/app/product/19.3.0/

Step 5:Change ownership and group to match the good node:Replace grid:oinstall with the correct user and group from the good node.

chown -R grid:oinstall /grid19c/app/product/19.3.0/grid_home
chmod -R 775 /grid19c/app/product/19.3.0/grid_home

Step 6: Rename the path and change host name to specific node where you restore.

  mv /grid19c/app/product/19.3.0/grid_home/gpnp/<NODE2_HOSTNAME> /grid19c/app/product/19.3.0/grid_home/gpnp/<NODE1_HOSTNAME>

Step 7: As root:Please execute

/grid19c/app/product/19.3.0/grid_home/crs/install/rootcrs.sh -unlock

Step 8: As root:Please execute

/grid19c/app/product/19.3.0/grid_home/bin/clscfg -localpatch

Step 9: Removed the sockets files .Please execute

 # rm -rf /tmp/.oracle/*
 # rm -rf /var/tmp/.oracle/*
 # rm -rf /usr/tmp/.oracle/*

Step 10: As root: Please execute

/grid19c/app/product/19.3.0/grid_home/crs/install/rootcrs.sh -lock

Step 11: As root: Please execute

/grid19c/app/product/19.3.0/grid_home/bin/crsctl start crs -wait

Leave a comment

About Me

I’m Dhiraj Kumar, an Oracle RAC Database With over 15 years of experience, I’m passionate about building high-performance, scalable database solutions that support critical business operations.

📘 Check out my latest articles and insights on Medium (@dhirajengr) .