You are heresrvctl start service; PRKP-1030 : Failed to start the service...ORA-44305: service ... is running

srvctl start service; PRKP-1030 : Failed to start the service...ORA-44305: service ... is running


By surachart - Posted on 06 March 2009

Just my idea. After I stoped service on RAC, and then need to start. But It had a problem.

$ srvctl start service -d DB -s S01 -i DB4

PRKP-1030 : Failed to start the service S01.
CRS-0215: Could not start resource 'ora.DB.S01.DB4.srv'

You can read from my blog http://surachartopun.com/2009/03/srvctl-start-service-prkp-1030-failed.html

From Above Error, that's make me!... Bad, I can not start service.

So, I tried another idea... (try to force stop)

$ srvctl stop service -d DB -s S01 -i DB4
PRKP-1065 : Service S01 is already stopped on instance DB4.

$ srvctl stop service -d DB -s S01 -i DB4 -f
PRKP-1065 : Service S01 is already stopped on instance DB4.

$ srvctl start service -d DB -s S01 -i DB4
PRKP-1030 : Failed to start the service S01.
CRS-0215: Could not start resource 'ora.DB.S01.DB4.srv'

that's not help me anything.

Check... Use "crs_stat"
ora.DB.S01.DB3.srv ONLINE ONLINE on node03
ora.DB.S01.DB4.srv ONLINE OFFLINE on node04
ora.DB.S01.cs ONLINE ONLINE on node03

So, I had some idea... I checked imon_DB.log file at $ORACLE_HOME/log/hostname/racg/* PATH on node, I used "srvctl start service -d DB -s S01 -i DB4"

2009-03-06 15:33:34.912: [ RACG][1273112928] [28413][1273112928][ora.DB.S01.DB4.srv]: clsrcsnstartsrv: service name S01 already exists
2009-03-06 15:33:34.913: [ RACG][1273112928] [28413][1273112928][ora.DB.S01.DB4.srv]: CLSR-0002: Oracle error encountered while executing clsrcsnstartsrv : execute2
2009-03-06 15:33:34.913: [ RACG][1273112928] [28413][1273112928][ora.DB.S01.DB4.srv]: ORA-44305: service S01 is running
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 86
ORA-06512: at "SYS.DBMS_SERVICE", line 444
ORA-06512: at "SYS.DBMS_SERVICE", line 365

ORA-44305: service S01 is running

What's going on?

So, I connected database on DB4 instance (node4)

$ env | grep ORACLE_SID
ORACLE_SID=DB4

$ sqlplus / as sysdba

SQL> select instance_name from v$instance;

INSTANCE_NAME
----------------
DB4

SQL> show parameter service_name

NAME TYPE VALUE
------------------------- ----------- --------
service_names string S01, DB

Oh, This Instance has S01 service online.

My idea used DBMS_SERVICE.STOP_SERVICE to stop service (S01) on this instance.

SQL> exec DBMS_SERVICE.STOP_SERVICE('S01','DB4');

PL/SQL procedure successfully completed.

SQL> show parameter service_name

NAME TYPE VALUE
------------------------- ----------- --------
service_names string DB

And then use "srvctl" command to start again...
$ srvctl start service -d DB -s S01 -i DB4

Wow, It worked... no error

And then check...

Use "crs_stat"

ora.DB.S01.DB3.srv ONLINE ONLINE on node03
ora.DB.S01.DB4.srv ONLINE ONLINE on node04
ora.DB.S01.cs ONLINE ONLINE on node03

And...

$ sqlplus / as sysdba

SQL> select instance_name from v$instance;

INSTANCE_NAME
----------------
DB4

SQL> show parameter service_name

NAME TYPE VALUE
------------------------- ----------- --------
service_names string S01, DB



Syndicate

Syndicate content

Follow DatabasesLA on Twitter

Who's online

There are currently 0 users and 1 guest online.

Estadisticas

Locations of visitors to this page

hidden hit counter