Friday, March 21, 2008

Register a single instance database to the OCR

Database instances on ASM will be automatically re-started from server reboot, if ASM and instances are registered in ORATAB (with ASM as the first entry). But, if Clusterware (CRS) is installed on the server, ORATAB will not re-start any database.

The correct way is to register databases, including single instance database, to the OCR and let the cluster server to restart the database automatically. To be registered to OCR, there is no requirement for a database to be clustered. This illustration is for a single instance database.

1. Run ocrdump to backup the OCR
2. Check the current list of services
pdb1s:/localhome/oracle$crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora.pdwas.db application OFFLINE OFFLINE
ora....s1.inst application OFFLINE OFFLINE
ora....s2.inst application OFFLINE OFFLINE
ora...._taf.cs application OFFLINE OFFLINE
ora....as1.srv application OFFLINE OFFLINE
ora....as2.srv application OFFLINE OFFLINE
ora....SM1.asm application ONLINE ONLINE pdb1s
ora....1S.lsnr application ONLINE ONLINE pdb1s
ora....b1s.gsd application ONLINE ONLINE pdb1s
ora....b1s.ons application ONLINE ONLINE pdb1s
ora....b1s.vip application ONLINE ONLINE pdb1s
ora....SM2.asm application ONLINE ONLINE pdb2s
ora....2S.lsnr application ONLINE ONLINE pdb2s
ora....b2s.gsd application ONLINE ONLINE pdb2s
ora....b2s.ons application ONLINE ONLINE pdb2s
ora....b2s.vip application ONLINE ONLINE pdb2s

3. Use two commands to add single instance database PFPS, which is only on server PDB1S (and not on any RAC), to the OCR.
$ srvctl add database -d pfps -o $ORACLE_HOME -s open
$ srvctl add instance -d pfps -i pfps -n pdb1s

pdb1s:/localhome/oracle$srvctl add database -d pfps -o $ORACLE_HOME -s open
pdb1s:/localhome/oracle$srvctl add instance -d pfps -i pfps -n pdb1s
-- Check the change
pdb1s:/localhome/oracle$crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora.pdwas.db application OFFLINE OFFLINE
ora....s1.inst application OFFLINE OFFLINE
ora....s2.inst application OFFLINE OFFLINE
ora...._taf.cs application OFFLINE OFFLINE
ora....as1.srv application OFFLINE OFFLINE
ora....as2.srv application OFFLINE OFFLINE
ora.pfps.db application OFFLINE OFFLINE
ora....ps.inst application OFFLINE OFFLINE
ora....SM1.asm application ONLINE ONLINE phdssdb1s
ora....1S.lsnr application ONLINE ONLINE phdssdb1s
ora....b1s.gsd application ONLINE ONLINE phdssdb1s
ora....b1s.ons application ONLINE ONLINE phdssdb1s
ora....b1s.vip application ONLINE ONLINE phdssdb1s
ora....SM2.asm application ONLINE ONLINE phdssdb2s
ora....2S.lsnr application ONLINE ONLINE phdssdb2s
ora....b2s.gsd application ONLINE ONLINE phdssdb2s
ora....b2s.ons application ONLINE ONLINE phdssdb2s
ora....b2s.vip application ONLINE ONLINE phdssdb2s

3. Use svrctl to stop / start the database and services
$ srvctl stop database -d pfps -o immediate
(used Sql*Plus to stop the db at the first time)

pdb1s:/localhome/oracle$ srvctl start database -d pfps
-- Check the effect
pdb1s:/localhome/oracle$crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora.pdwas.db application OFFLINE OFFLINE
ora....s1.inst application OFFLINE OFFLINE
ora....s2.inst application OFFLINE OFFLINE
ora...._taf.cs application OFFLINE OFFLINE
ora....as1.srv application OFFLINE OFFLINE
ora....as2.srv application OFFLINE OFFLINE
ora.pfps.db application ONLINE ONLINE pdb2s
ora....ps.inst application ONLINE ONLINE pdb1s
ora....SM1.asm application ONLINE ONLINE pdb1s
ora....1S.lsnr application ONLINE ONLINE pdb1s
ora....b1s.gsd application ONLINE ONLINE pdb1s
ora....b1s.ons application ONLINE ONLINE pdb1s
ora....b1s.vip application ONLINE ONLINE pdb1s
ora....SM2.asm application ONLINE ONLINE pdb2s
ora....2S.lsnr application ONLINE ONLINE pdb2s
ora....b2s.gsd application ONLINE ONLINE pdb2s
ora....b2s.ons application ONLINE ONLINE pdb2s
ora....b2s.vip application ONLINE ONLINE pdb2s

4. Other commands to check the details:
$ crs_stat -p
$ crs_stat | more

No comments: