Un article pour une fois en Anglais, cela permet de garder un peu la forme ...
During some tests in my RAC on Windows, I've encountered an issue while both of my nodes was restarted at the same time :
The instances are marked Online, but there is an error when I tried to connect :
TNS:protocol adapter error
RAC information :
CRS : 220.127.116.11
Windows 2003 R2 64B
RDBMS 10.0.2.4 Patchset 45
Of course, it's not very clean to reboot both the nodes at the same time, but I promise that it can be possible.. in case of electrical problem for example, because my RAC is on the same datacenter.
My problem appears on 10.2.0.4 RDBMS and 10.2.0.5 RDBMS, with no patch installed. With RDBMS 10.2.0.5 patch 15, there is no more problems, and of course with 18.104.22.168 too.
Note that if only one node restart, the issue does not appear, it's not a issue with my RAC configuration.
I've tried to follow the note "1058646.1" on oracle support, but I've encountered another problem with srvctl, so I think that it's really a compatibility issue with 10.2.0.4.
After some days, Oracle support tell me that this problem is out of support for this release, and I was obliged to make a workaround by myself :
-> With GPEDIT.MSC, it's possible to configure "post reboot" actions, with user's scripts.
Finally, I have make only one script to Stop and start instance, and I have check the restart of my both node at the same time : Is now ok.
Here a example of the script :
sleep 300 Set ORACLE_HOME=D:\bin\Oracle\product\10.2.0 set NODE=2 FOR /F "tokens=* delims= " %%I in (D:\bin\scripts\lst_instances.txt) do ( %ORACLE_HOME%\bin\srvctl stop instance -d %%I -i %%I%NODE% %ORACLE_HOME%\bin\srvctl start instance -d %%I -i %%I%NODE% )
You can see in the top of this script a SLEEP 300 command :
I advice to make a sleep command before doing these actions, because RAC is not really up after the reboot of the OS. This add of the "sleep 300" allow to stop and start after that all RAC ressources will be up.