Wednesday, May 9, 2012

Registering a database with GRID cluster in 11g

  • I had recently made a clone test database in my server, but when i was trying to start/stop this using srvctl it was failing with below errors
         [oracle@localhost ~]$ 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_tstdbdup
         oracle    4284  3702  0 16:36 pts/1    00:00:00 grep pmon
        [oracle@localhost ~]$ echo $ORACLE_SID
        tstdbdup
        [oracle@localhost ~]$ srvctl stop database -d tstdbdup
        PRCD-1120 : The resource for database tstdbdup could not be found.
        PRCR-1001 : Resource ora.tstdbdup.db does not exist
        [oracle@localhost ~]$ id

  • When i checked in my cluster the db resource was not registered.(no entry as ora.tstdbdup.db)
       [grid@localhost ~]$ crsctl stat res -t
       --------------------------------------------------------------------------------
       NAME           TARGET  STATE        SERVER                   STATE_DETAILS
       --------------------------------------------------------------------------------
       Local Resources
       --------------------------------------------------------------------------------
       ora.DATA.dg
               ONLINE  ONLINE       localhost
      ora.LISTENER.lsnr
               ONLINE  ONLINE       localhost
      ora.asm
               ONLINE  ONLINE       localhost                Started
      --------------------------------------------------------------------------------
      Cluster Resources
     --------------------------------------------------------------------------------
     ora.cssd
        1        ONLINE  ONLINE       localhost
    ora.diskmon
      1        ONLINE  ONLINE       localhost
    ora.labdb.db
      1        OFFLINE OFFLINE
    

  • I again registered the database with cluster as below.
      [oracle@localhost ~]$ echo $ORACLE_HOME
      /u01/app/oracle/oracle11201
      [oracle@localhost ~]$ srvctl add database -d tstdbdup -o /u01/app/oracle/oracle11201
      [oracle@localhost ~]$ srvctl stop database -d tstdbdup -o immediate
      PRCC-1016 : tstdbdup was already stopped
     [oracle@localhost ~]$ srvctl start database -d tstdbdup
     [oracle@localhost ~]$ srvctl stop database -d tstdbdup -o immediate
     [oracle@localhost ~]$ srvctl start database -d tstdbdup
  • I did the start and stop of  database from SRVCTL utility(oracle user) to verify it works fine. Also did a check from clusterware it looks fine.
        [grid@localhost app]$ crsctl stat res -t
        --------------------------------------------------------------------------------
       NAME           TARGET  STATE        SERVER                   STATE_DETAILS
       --------------------------------------------------------------------------------
       Local Resources
      --------------------------------------------------------------------------------
     ora.DATA.dg
               ONLINE  ONLINE       localhost
     ora.LISTENER.lsnr
               ONLINE  ONLINE       localhost
    ora.asm
               ONLINE  ONLINE       localhost                Started
    --------------------------------------------------------------------------------
   Cluster Resources
   --------------------------------------------------------------------------------
   ora.cssd
      1        ONLINE  ONLINE       localhost
   ora.diskmon
      1        ONLINE  ONLINE       localhost
   ora.labdb.db
      1        OFFLINE OFFLINE
   ora.testdb.db
      1        OFFLINE OFFLINE
   ora.tstdbdup.db
      1        ONLINE  ONLINE       localhost                Open

  


2 comments:

  1. hi subhendra
    thanks for your help .i was facing with similar problem. i am new to RAC .your solution solved my issue.



    thanks

    ReplyDelete
  2. Thank you for your very clear explanation. I found it very helpful, and I learned new commands.

    ReplyDelete