Thursday, February 20, 2014

While starting standby database using srvctl ORA-29760: instance_number parameter not specified

I was trying to setup stanby database from RAC database and after the setup I have added the database and instance as cluster resource and tried starting with srvctl but received the error below:


[oracle@racdr1 dbs]$ srvctl start database -d rac_stby 
PRCR-1079 : Failed to start resource ora.rac_stby.db
CRS-5017: The resource action "ora.rac_stby.db start" encountered the following error: 
ORA-29760: instance_number parameter not specified
. For details refer to "(:CLSN00107:)" in "/u01/app/11.2.0/grid/log/racdr1/agent/crsd/oraagent_oracle/oraagent_oracle.log".

CRS-2674: Start of 'ora.rac_stby.db' on 'racdr1' failed
CRS-2632: There are no more servers to try to place resource 'ora.rac_stby.db' on that would satisfy its placement policy
[oracle@racdr1 dbs]$



Well the solution to the problem is straight forward, as the message suggest that (ORA-29760: instance_number parameter not specified), this means that instance_number parameter have some issues.

So I had a look at my spfile and saw what instance number I have used it is
RAC_STBY1.instance_number=1
Mind it RAC_STBY1 is in capital letters and the mistake I made to add database and instance was that I use lower case with the following command.


[oracle@racdr1 dbs]$ srvctl add database -d rac_stby -n rac -o /u01/app/oracle/product/11.2.0/db_1 -m localdomain -p '+DATA/rac_stby/parameterfile/spfilerac_stby.ora' -r physical_standby -a DATA,FRA -s open
[oracle@racdr1 dbs]$ srvctl add instance -d rac_stby -i rac_stby1 -n racdr1


So the solution this time is remove the database and instance information from OCR using the commands below:


[oracle@racdr1 dbs]$ srvctl remove instance -d rac_stby -i rac_stby1
Remove instance from the database rac_stby? (y/[n]) yes
[oracle@racdr1 dbs]$ srvctl remove database -d rac_stby
Remove the database rac_stby? (y/[n]) y
[oracle@racdr1 dbs]$

Now add again with proper case :


[oracle@racdr1 dbs]$ srvctl add database -d RAC_STBY -n rac -o /u01/app/oracle/product/11.2.0/db_1 -m localdomain -p '+DATA/RAC_STBY/parameterfile/spfileRAC_STBY.ora' -r physical_standby -a DATA,FRA -s open
[oracle@racdr1 dbs]$ srvctl add instance -d RAC_STBY -i RAC_STBY1 -n racdr1


This time the database started okay without any issues.


[oracle@racdr1 dbs]$ srvctl start database -d RAC_STBY 
[oracle@racdr1 dbs]$ 
[oracle@racdr1 dbs]$ srvctl status database -d RAC_STBY
Instance RAC_STBY1 is running on node racdr1
[oracle@racdr1 dbs]$ 




Wednesday, February 19, 2014

ping using a specific Ethernet

I was working on RAC env, because this is my virtual machine and has three NICs
One for my machine to connect to node which is eth0
Second for my public interface like scan and listener eth1
Third for my interconnect which is eth2

Sometime I could not ping to newly created recovery catalog machine and rcat1 but it works other time. To diagnose this issue I wanted to ping from RAC node to rcat1 using a specific adapter rather than UNIX determining which to use. To achieve this I ran the following command
ping -I eth1 192.168.56.100or ping -I eth1 rcat1
This was I am sure that I am only using eth1 from rac node to connect to rcat1 host.