EBS DB startup through svrctl is getting failed with ORA-00119: invalid specification for system parameter REMOTE_LISTENER
Symptoms
EBS DB startup through svrctl is getting failed with below symptoms, while sqlplus startup works fine.
oracle@icm1 golf1_icm1]$ srvctl start database -d golf
PRCR-1079 : Failed to start resource ora.golf.db
CRS-5017: The resource action "ora.golf.db start" encountered the following error:
ORA-00119: invalid specification for system parameter REMOTE_LISTENER
ORA-00132: syntax error or unresolved network name 'golf_REMOTE'
. For details refer to "(:CLSN00107:)" in "/grid/11.2.0/log/icm1/agent/crsd/oraagent_oracle/oraagent_oracle.log".
oracle@icm1 golf1_icm1]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Wed Jun 19 16:52:41 2013
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount
ORACLE instance started.
Total System Global Area 1071333376 bytes
Fixed Size 1349732 bytes
Variable Size 427820956 bytes
Database Buffers 629145600 bytes
Redo Buffers 13017088 bytes
SQL> show parameter listener
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
listener_networks string
local_listener string golf1_LOCAL
remote_listener string golf_REMOTE
SQL> alter database mount;
Database altered.
SQL> alter database open;
Database altered.
<<< no problem to start with sqlplus
Cause
Autoconfig tool in EBS is creating the config files(tnsnames, listener, sqlnet files in a context folder below ORACLE_HOME/network/admin folder), but the CRS expects these files to be in the ORACLE_HOME/network/admin folder.
Solution
Create the IFILE or symbolic link for common path of these files under ORACLE_HOME/network/admin folder and set TNS_ADMIN exclusively in OCR for shared oracle homes with below commands:
•On each node add the AutoConfig listener.ora as an ifile in the $ORACLE_HOME/network/admin/listener.ora
•On each node add the AutoConfig tnsnames.ora as an ifile in the $ORACLE_HOME/network/admin/tnsnames.ora
•On each node add the AutoConfig sqlnet.ora as an ifile in the $ORACLE_HOME/network/admin/sqlnet.ora
-- Add TNS_ADMIN environment variable to the database resource:
srvctl setenv database -d <database_name> -T TNS_ADMIN= $ORACLE_HOME/network/admin-- Verify TNS_ADMIN is set correctly:
srvctl getenv database -d golf Now start the database instances using srvctl.
Symptoms
EBS DB startup through svrctl is getting failed with below symptoms, while sqlplus startup works fine.
oracle@icm1 golf1_icm1]$ srvctl start database -d golf
PRCR-1079 : Failed to start resource ora.golf.db
CRS-5017: The resource action "ora.golf.db start" encountered the following error:
ORA-00119: invalid specification for system parameter REMOTE_LISTENER
ORA-00132: syntax error or unresolved network name 'golf_REMOTE'
. For details refer to "(:CLSN00107:)" in "/grid/11.2.0/log/icm1/agent/crsd/oraagent_oracle/oraagent_oracle.log".
oracle@icm1 golf1_icm1]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Wed Jun 19 16:52:41 2013
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup nomount
ORACLE instance started.
Total System Global Area 1071333376 bytes
Fixed Size 1349732 bytes
Variable Size 427820956 bytes
Database Buffers 629145600 bytes
Redo Buffers 13017088 bytes
SQL> show parameter listener
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
listener_networks string
local_listener string golf1_LOCAL
remote_listener string golf_REMOTE
SQL> alter database mount;
Database altered.
SQL> alter database open;
Database altered.
<<< no problem to start with sqlplus
Cause
Autoconfig tool in EBS is creating the config files(tnsnames, listener, sqlnet files in a context folder below ORACLE_HOME/network/admin folder), but the CRS expects these files to be in the ORACLE_HOME/network/admin folder.
Solution
Create the IFILE or symbolic link for common path of these files under ORACLE_HOME/network/admin folder and set TNS_ADMIN exclusively in OCR for shared oracle homes with below commands:
•On each node add the AutoConfig listener.ora as an ifile in the $ORACLE_HOME/network/admin/listener.ora
•On each node add the AutoConfig tnsnames.ora as an ifile in the $ORACLE_HOME/network/admin/tnsnames.ora
•On each node add the AutoConfig sqlnet.ora as an ifile in the $ORACLE_HOME/network/admin/sqlnet.ora
-- Add TNS_ADMIN environment variable to the database resource:
srvctl setenv database -d <database_name> -T TNS_ADMIN= $ORACLE_HOME/network/admin-- Verify TNS_ADMIN is set correctly:
srvctl getenv database -d golf Now start the database instances using srvctl.