While I was implementing rac, I notice some of the service were online and some were unknown. I try to start the service itself, it didn’t start and ‘placement’ error showed up. This happend because when trying to start the crs with the crsctl start crs command on both nodes, there was not enough time between the start process.
I manage to solve this by try and error method. Not an issue because this is only test rac environment, not production.
$ crs_stat -t
Name Type Target State Host
————————————————————
ora….SM1.asm application ONLINE ONLINE innotiive01
ora….01.lsnr application ONLINE ONLINE innotiive01
ora….e01.gsd application ONLINE UNKNOWN innotiive01
ora….e01.ons application ONLINE ONLINE innotiive01
ora….e01.vip application ONLINE ONLINE innotiive01
ora….SM2.asm application ONLINE ONLINE innotiive02
ora….02.lsnr application ONLINE ONLINE innotiive02
ora….e02.gsd application ONLINE UNKNOWN innotiive02
ora….e02.ons application ONLINE UNKNOWN innotiive02
ora….e02.vip application ONLINE ONLINE innotiive02
ora.orcl.db application ONLINE ONLINE innotiive02
ora….l1.inst application ONLINE ONLINE innotiive01
ora….l2.inst application ONLINE UNKNOWN innotiive02
ora…._taf.cs application ONLINE UNKNOWN innotiive02
ora….cl1.srv application ONLINE UNKNOWN innotiive01
ora….cl2.srv application ONLINE UNKNOWN innotiive02
when you try to start any of the services, it will gave placement error. To view the real name of the services, just issue crs_stat command.
$./crs_start ora.orcl.orcl_taf.orcl2.srv
So, in order to make all the services goes back online, we must shutdown/startup back all the services in the correct order. I’m executing the command one by one on node 1.
Stop procedure
1. stop taf service
$ srvctl stop service -d orcl -s orcl_taf
2. stop instance
$ srvctl stop instance -d orcl -i orcl1
$ srvctl stop instance -d orcl -i orcl2
3. stop asm
$ srvctl stop asm -n innotiive01
$ srvctl stop asm -n innotiive02
4. stop nodeapps
$ srvctl stop nodeapps -n innotiive01
$ srvctl stop nodeapps -n innotiive02
At this point, all the services will be in offline state. Let’s start it back. Remember, execute one by one the command at node 1.
$ crs_stat -t
Name Type Target State Host
————————————————————
ora….SM1.asm application OFFLINE OFFLINE
ora….01.lsnr application OFFLINE OFFLINE
ora….e01.gsd application OFFLINE OFFLINE
ora….e01.ons application OFFLINE OFFLINE
ora….e01.vip application OFFLINE OFFLINE
ora….SM2.asm application OFFLINE OFFLINE
ora….02.lsnr application OFFLINE OFFLINE
ora….e02.gsd application OFFLINE OFFLINE
ora….e02.ons application OFFLINE OFFLINE
ora….e02.vip application OFFLINE OFFLINE
ora.orcl.db application OFFLINE OFFLINE
ora….l1.inst application OFFLINE OFFLINE
ora….l2.inst application OFFLINE OFFLINE
ora…._taf.cs application OFFLINE OFFLINE
ora….cl1.srv application OFFLINE OFFLINE
ora….cl2.srv application OFFLINE OFFLINE
Start procedure
1. start nodeapps
$ srvctl start nodeapps -n innotiive01
$ srvctl start nodeapps -n innotiive02
2. start asm
$ srvctl start asm -n innotiive01
$ srvctl start asm -n innotiive02
3. start instance
$ srvctl start instance -d orcl -i orcl1
$ srvctl start instance -d orcl -i orcl2
4. start taf
$ srvctl start service -d orcl -s orcl_taf
Actually for taf service, I’m not sure when to start/stop it first. I can’t find any information regarding this. But this procedure work fine with my rac.