Wednesday, October 31, 2007

Oracle 10g RAC - Intermittent Connection w/ ORA-12545

Since setting up our 10g RAC we have been experiencing problems connecting to the database via SQL*Plus. It would seem to work randomly and when it failed we got the error message
ORA-12545 Connect failed because target host or object does not exist

The following lines were added to the tnsnames.ora file:

ORCL_TAF =
(DESCRIPTION =
(ADDRESS = (PROTOCOL =
TCP)(HOST = orcl-rac1-vip)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl-rac2-vip)(PORT = 1521))
(LOAD_BALANCE =yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL_taf)
(FAILOVER_MODE =
(TYPE = SELECT)
(METHOD = BASIC)
(RETRIES = 180)
(DELAY = 5)
)
)
)

LISTENERS_ORCL =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl-rac1-vip)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl-rac2-vip)(PORT = 1521))
)

ORCL2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl-rac2-vip)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
(INSTANCE_NAME = ORCL2)
)
)

ORCL1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl-rac1-vip)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME =
ORCL)
(INSTANCE_NAME =
ORCL1)
)
)

ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl-rac1-vip)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl-rac2-vip)(PORT = 1521))
(LOAD_BALANCE = yes)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME =
ORCL)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)

This problem was resolved by setting the initialization parameter LOCAL_LISTENERS to the LISTENERS_ORCL.


No comments:

Post a Comment