Upgrading Oracle Grid Infrastructure 11.2 (it’s just another marketing name for the Oracle Clusterware, formerly known as Cluster Ready Services CRS) usually is easy: The runInstaller offers an upgrade mode, and discovers nodes and versions without further effort.
But what, if not? The message will be “[INS-40406] The installer detects no existing Oracle Grid Infrastructure software on the system” and runInstaller just refuses to continue.
Finally I found out, that the culprit may be in the “$ORACLE_BASE/../oraInventory/ContentxXML/inventory.xml” file. The Clusterware home may not be flagged as CRS there (CRS=”true” missing):
<HOME NAME="Ora11g_gridinfrahome2" LOC="/u01/app/11.2.0/grid" TYPE="O" IDX="6" CRS="true"> <NODE_LIST> <NODE NAME="bs-klugdb1"/> <NODE NAME="bs-klugdb2"/> </NODE_LIST>
To repair it, the GI runInstaller has an UpdateNodeList parameter, so the command in this case looked like:
./runInstaller -updateNodeList ORACLE_HOME="/u01/app/11.2.0/grid" CRS=true
Well, that’s it. Easy if you know, and worth 3 hours of nighttime research, if not.