-
My client SqlPlus uses TNSNAMES to connect to the Ora817 db. One name is ORCL configured as dedicated connection and the other is NETORCL configured as shared connection. The other connection information is the same (ip, port, sid, etc).
However, the dedicated connection works fine, and the shared connection gives error ORA-12545, "Connection failed, Target host or object doesn't exist". Both connections used to work fine. The only thing I can think of is the network DNS server change. But why does the dedicated connectin work and the shared conn not? What configuration parameter affects the difference?
-
Here is an excerpt from Oracle Documentation:
ORA-12545: TNS:name lookup failure
Cause: The listener on the remote node cannot be contacted.
Actions:
Verify that the ADDRESS in the tnsnames.ora file and the listener.ora file is correct.
Verify that the listener on the remote node has been started. Enter:
lsnrctl
lsnrctl> status listener_name
listener_name is the name of the listener defined in the listener.ora file. It is not necessary to identify the listener if you are using the default listener, named LISTENER.
If the output indicates the listener is not running, try starting it with the command:
lsnrctl> start listener_name
I think your listener is tuned for the dedicated connection only.
-
I thing you may have simple network problem:
- cable, ip addres ...
1. check ping;
- ping YOUR_HOST
- ping YOUR_IP_ADDRESS
2. check firewalls between client mashine and DB server.
- traceroute ...
3. check tnsping YOUR_TNS_ENTRY
- tnsping YOUR_TNS_ENTRY
-
Checked listener status. It's fine.
Pinged host and tnsnames. Fine.
Keep in mind that the dedicated connection works.
How do I tune it for shared connection?
I don't know if this has anything to do with it. The SNMP service used to be running, but for security reasons, has been disabled. Thanks.
-
The SNMP service in this case not needed. SNMP uses only by Oracle Intellegent agent.
Are you configured shared server (MTS_DISPATCHER) in init.ora.
If you can - post tnsnames.ora, listener.ora, and init.ora files.
-
For security reasons, I am only posting selected information with fititious IP here.
Note that it used to work, and ORCL still works.
INIT.ORA
db_name = "orcl"
db_domain = nt3
instance_name = orcl
service_names = orcl.nt3
remote_login_passwordfile = exclusive
os_authent_prefix = ""
JOB_QUEUE_PROCESSES = 4
job_queue_interval = 60
open_links = 4
mts_dispatchers = "(protocol=TCP)"
mts_servers = 1
mts_max_servers = 10
compatible = 8.1.6.1.0
LISTENER.ORA
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 111.111.111.11)(PORT = 1521))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC4))
)
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = d:\oracle\orant)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = orcl.nt3)
(ORACLE_HOME = d:\oracle\orant)
(SID_NAME = orcl)
)
)
TNSNAMES.ORA
INST1_HTTP =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = nt3)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = SHARED)
(SERVICE_NAME = orcl.nt3)
(PRESENTATION = http://admin)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC4))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 111.111.111.11)(PORT = 1521))
)
(CONNECT_DATA =
(SRVR = DEDICATED)
(SERVICE_NAME = orcl.NT3)
)
)
NETORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 111.111.111.11)(PORT = 1521))
)
(CONNECT_DATA =
(SRVR = SHARED)
(SERVICE_NAME = orcl.NT3)
)
)
-
Try to change:
ORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 111.111.111.11)(PORT = 1521))
)
(CONNECT_DATA =
(SRVR = DEDICATED)
(SERVICE_NAME = orcl.NT3)
)
)
NETORCL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 111.111.111.11)(PORT = 1521))
)
(CONNECT_DATA =
(SRVR = SHARED)
(SID = orcl)
)
)
-
Remover the option of
SRVR=SHARED entry from your tnsnames.ora file and try again.
IF the database had been configured under shared server mode, then by default the connections would go for the shared server. If you want the dedicated option, then you would configure the SRVR to dedicated mode....
Let me know how it all goes...
Sam
Thanx
Sam
Life is a journey, not a destination!
-
-
O.k lets first see whether your listener had registered any dispatchers....
do
lsnrctl services
Do you see the word DISPATCHER corresponding to the instance?
Sam
Thanx
Sam
Life is a journey, not a destination!
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|