Oracle RAC restart one instance only.


Suppose we want to restart the DB MISUAT.  As the DB is running on Oracle cluster, it is actually running on two servers.  The below example shows restart the instances one by one.

Set ORACLE_SID

set ORACLE_SID=MISUAT1
(actually, this is not required, but just a good practice)

Check the database status

[oracle@xdb01 ~]$ srvctl status database -d MISUAT
Instance MISUAT1 is running on node xdb01
Instance MISUAT2 is running on node xdb02

MISUAT is running on both nodes.


Stop MISUAT on Node 1.  Then check the DB status again.


[oracle@xdb01 ~]$ srvctl stop instance -d MISUAT -i MISUAT1 -o abort
[oracle@xdb01 ~]$ srvctl status database -d MISUAT
Instance MISUAT1 is not running on node xdb01
Instance MISUAT2 is running on node xdb02

Stop MISUAT on Node 2.  Then check the DB status again.

[oracle@xdb01 ~]$ srvctl stop instance -d MISUAT -i MISUAT2 -o abort
[oracle@xdb01 ~]$ srvctl status database -d MISUAT
Instance MISUAT1 is not running on node xdb01
Instance MISUAT2 is not running on node xdb02

Instance on both nodes stopped.  The DB is completely stopped.

Start MISUAT on Node 1.  Then check the DB status again.

[oracle@xdb01 ~]$ srvctl start instance -d MISUAT -i MISUAT2
[oracle@xdb01 ~]$ srvctl status database -d MISUAT
Instance MISUAT1 is not running on node xdb01
Instance MISUAT2 is running on node xdb02

Start MISUAT on Node 1.  Then check the DB status again.

[oracle@euxdb01 ~]$ srvctl start instance -d MISUAT -i MISUAT1
[oracle@euxdb01 ~]$ srvctl status database -d MISUAT
Instance MISUAT1 is running on node xdb01
Instance MISUAT2 is running on node xdb02


Reference: Baidu

Comments

Popular Posts