Monday, July 19, 2010

PRKP-1001, CRS-0215 while starting instance using srvctl

Problem Description
The database/instances are not starting up using srvctl command, while starting up it shows PRKP-1001, CRS-0215 errors.

oracle@DBRAC2:~> srvctl status instance -i dbrac2 -d dbrac
Instance dbrac2 is not running on node dbrac2

oracle@DBRAC2:~> srvctl start instance -i dbrac2 -d dbrac
PRKP-1001 : Error starting instance dbrac2 on node dbrac2
CRS-0215: Could not start resource ora.dbrac.dbrac2.inst.

But using sqlplus the instances are able to come up. For example,
SQL> startup
works fine.

Cause of the Problem
"srvctl" command picks the parameter file from the location specified while registering the database with OCR.

In this case srvctl will pick "+DATA1/dbrac/spfiledbrac.ora" to start the instance,
# srvctl config database -d dbrac -a 
adc17 dbrac1 /u01/app/oracle/product/10.2.0/db_1
adc18 dbrac2 /u01/app/oracle/product/10.2.0/db_1
DB_UNIQUE_NAME: dbrac
DB_NAME: dbrac
ORACLE_HOME: /u01/app/oracle/product/10.2.0/db_1
SPFILE: +DATA1/dbrac/spfiledbrac.ora
DOMAIN: null
DB_ROLE: PRIMARY
START_OPTIONS: open
POLICY: AUTOMATIC
ENABLE FLAG: DB ENABLED
While we start the instance using sqlplus, it picks the parameter file from $ORACLE_HOME/dbs directory by default

SQL> startup
SQL> show parameter spfile
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string /u01/app/oracle/product/10.2.0/db_1/dbs/spfiledbrac.ora

As the parameter file used to start the instance using srvctl and sqlplus are not the same srvctl fails to start the oracle instance.

Solution of the problem
Make sure that both sqlplus (i.e $ORACLE_HOME/dbs) and srvctl command (i.e +DATA1/dbrac/spfiledbrac.ora ) are using same parameter file to start up the instances.

1 comment:

  1. this can also be cause by editing the glogin.sql script... for example, dynamically setting the sql prompt...

    ReplyDelete