Thursday, December 4, 2014

REGISTERING A DATABASE WITH GRID CLUSTER


After database duplication some times you may not be able to stop,start or see the status of the database using srvctl utility. 
$ srvctl stop database -d TESTDB
PRCD-1120 : The resource for database TESTDB could not be found.
PRCR-1001 : Resource ora.TESTDB.db does not exist
Despite the above errors the database is up and running.
$ ps -fe|grep pmon
grid      3960     1  0 15:57 ?        00:00:00 asm_pmon_+ASM
oracle    4179     1  0 16:33 ?        00:00:00 ora_pmon_TESTDB
oracle    4284  3702  0 16:36 pts/1    00:00:00 grep pmon
$ echo $ORACLE_SID
TESTDB

$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg           
               ONLINE  ONLINE       dbsrvr1
               ONLINE  ONLINE       dbsrvr2   
ora.LISTENER.lsnr   
               ONLINE  ONLINE       dbsrvr1
            ONLINE  ONLINE       dbsrvr2
ora.asm       
               ONLINE  ONLINE       dbsrvr1                Started
            ONLINE  ONLINE       dbsrvr2                Started
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.proddb.db        
      1        ONLINE  ONLINE       dbsrvr1                open
     2        ONLINE  ONLINE       dbsrvr2                open
Please NOTE that there is no entry for TESTDB (  ora.testdb.db  )

SOLUTION
Register the database as follows
$ echo $ORACLE_HOME
/u01/app/oracle/11.2.0.3
$ srvctl add database -d TESTDB -o /u01/app/oracle/11.2.0.3
Try to bounce the database using the srvctl utility and check its status using crsctl now you should see an entry for TESTDB.
$ srvctl stop database -d TESTDB -o immediate
PRCC-1016 : TESTDB was already stopped
$ srvctl start database -d TESTDB
$ srvctl stop database -d TESTDB -o immediate
$ srvctl start database -d TESTDB
$ crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg           
                ONLINE  ONLINE       dbsrvr1
                ONLINE  ONLINE       dbsrvr2   
ora.LISTENER.lsnr   
                ONLINE  ONLINE       dbsrvr1
             ONLINE  ONLINE       dbsrvr2
ora.asm       
                ONLINE  ONLINE       dbsrvr1                Started
             ONLINE  ONLINE       dbsrvr2                Started
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.proddb.db        
      1        ONLINE  ONLINE       dbsrvr1                open
     2        ONLINE  ONLINE       dbsrvr2                open
ora.testdb.db        
      1        ONLINE  ONLINE       dbsrvr1                open
     2        ONLINE  ONLINE       dbsrvr2                open

No comments:

Post a Comment