?
Solved

Oracle Connection Problems

Posted on 2001-07-12
3
Medium Priority
?
1,040 Views
Last Modified: 2007-11-27
We've installed Oracle 8i for Windows NT in an
Ethernet-tcp/ip network, on a Dell 6450
PowerEdge Server, and are attempting to
connect to it using the Net8 assistant, from a
client PC. We've ensured that the service name,
protocol, etc are set up correctly, and we can
connect to the database from the database
server using SQL*PLUS.

From the client Net8 assistant, we keep getting
the error ORA-12560 - TNS:protocol adapter
error.

When I turn on the trace on the TNS Listener
running on the Server, it shows that the request
is arriving, and it attempts to process it, but
has some kind of failure creating a process to
respond to the request. It isn't obvious to me
what the error is, looking at the trace file
(attached below). If anyone can give some suggestions,
they would be welcome - thanks very much.

Jim Giles


Trace File:


TNSLSNR for 32-bit Windows: Version 8.1.5.0.0 - Production on 12-JUL-01 18:48:58

(c) Copyright 1998 Oracle Corporation.  All rights reserved.


--- TRACE CONFIGURATION INFORMATION FOLLOWS ---
New trace stream is "D:\Oracle\Ora81\network\trace\listener.trc"
New trace level is 4
--- TRACE CONFIGURATION INFORMATION ENDS ---
nsinherit: doing connect handshake...
nlpcaini: No process parameters set
nsinherit: inheriting the connection...
nsopen: opening transport...
nsopen: transport is open
nsnainit: inf->nsinfflg[0]: 0xd inf->nsinfflg[1]: 0xd
nsopen: global context check-in (to slot 0) complete
nscon: doing connect handshake...
nscon: got NSPTCN packet
nscon: discarding connect data (94 bytes)
nsinherit: connection inherited
nsinherit: connected
nsglldprm: Resolved "CONNECT_TIMEOUT_LISTENER" to: 10
nsglldprm: Resolved "STARTUP_WAIT_TIME_LISTENER" to: 0
nsgllsn: Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0))(PROTOCOL_STACK=(PRESENTATION=TTC)(SESSION=NS)))
nsopen: opening transport...
nsopen: transport is open
nsopen: global context check-in (to slot 1) complete
nsopen: opening transport...
nsopen: transport is open
nsopen: global context check-in (to slot 2) complete
nsgllsn: Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=d2_its_a)(PORT=1521))(PROTOCOL_STACK=(PRESENTATION=TTC)(SESSION=NS)))
nttbnd2addr: port resolved to 1521
nttbnd2addr: looking up IP addr for host: d2_its_a
nttcnp: Validnode Table IN use; err 0x0
nsopen: opening transport...
nttcnp: Validnode Table IN use; err 0x0
nttcnp: getting sockname
nsopen: transport is open
nsopen: global context check-in (to slot 3) complete
nscon: sending NSPTAC packet
nscon: sending 504 bytes connect data
nsdo: 504 bytes to NS buffer
nscon: doing connect handshake...
nscon: nsctxinf[0]=0xd, [1]=0xc
nsconbrok: asking transport to enable NTOBROKEN
nsnainconn: inf->nsinfflg[0]: 0xd inf->nsinfflg[1]: 0xc
nsopen: opening transport...
nsopen: transport is open
nsnainit: inf->nsinfflg[0]: 0xd inf->nsinfflg[1]: 0xd
nsopen: global context check-in (to slot 4) complete
nsanswer: deferring connect attempt; at stage 2
nsevdansw: exit
nsevdansw: exit
nscon: doing connect handshake...
nscon: got NSPTCN packet
nsevdansw: exit
nsevdansw: exit
nsevdansw: exit
nscon: sending NSPTAC packet
nscon: sending 376 bytes connect data
nsdo: 376 bytes to NS buffer
nscon: doing connect handshake...
nscon: nsctxinf[0]=0xd, [1]=0xc
nsdo: 745 bytes to NS buffer
nstimarmed: no timer allocated
nsclose: closing transport
nsclose: global context check-out (from slot 4) complete
tnslsnr: connect string inst->lcxd[0]: (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc))
tnslsnr: connect string inst->lcxd[1]: (ADDRESS=(PROTOCOL=tcp)(HOST=d2_its_a.d2_its)(PORT=1521))
nncpmlf_make_local_addrfile: construction of local names file failed
nncpmsf_make_sys_addrfile: system names file is D:\Oracle\Ora81\network\admin\tnsnames.ora
nsopen: opening transport...
nttcnp: Validnode Table IN use; err 0x0
nttcnp: getting sockname
nttcnr: waiting to accept a connection.
nttvlser: valid node check on incoming node 127.0.0.1
nttvlser: Accepted Entry: 127.0.0.1
nsopen: transport is open
nsnainit: inf->nsinfflg[0]: 0xd inf->nsinfflg[1]: 0xd
nsopen: global context check-in (to slot 4) complete
nsanswer: deferring connect attempt; at stage 2
nsevdansw: exit
nsevdansw: exit
nsopen: opening transport...
nttcnp: Validnode Table IN use; err 0x0
nttcnp: getting sockname
nttcnr: waiting to accept a connection.
nttvlser: valid node check on incoming node 127.0.0.1
nttvlser: Accepted Entry: 127.0.0.1
nsopen: transport is open
nsnainit: inf->nsinfflg[0]: 0xd inf->nsinfflg[1]: 0xd
nsopen: global context check-in (to slot 5) complete
nsanswer: deferring connect attempt; at stage 2
nscon: doing connect handshake...
nscon: got NSPTCN packet
nsevdansw: exit
nsevdansw: exit
nsevdansw: exit
nsevdansw: exit
nsevdrcvreq: recving connect data
nsdo: 449 bytes from NS buffer
nsevdansw: exit
nsevdansw: exit
nscon: doing connect handshake...
nscon: got NSPTCN packet
nsevdansw: exit
nsevdansw: exit
nsevdansw: exit
nsevdrcvreq: recving connect data
nsdo: 479 bytes from NS buffer
nsevdansw: exit
nsevdansw: exit
nsgcssr: Creating new handler.
nscon: sending NSPTAC packet
nscon: doing connect handshake...
nscon: nsctxinf[0]=0xd, [1]=0x9
nsconbrok: asking transport to enable NTOBROKEN
tnslsnr: connect string inst->lcxd[0]: (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc))
tnslsnr: connect string inst->lcxd[1]: (ADDRESS=(PROTOCOL=tcp)(HOST=d2_its_a.d2_its)(PORT=1521))
nsevdansw: exit
nsgcssr: Creating new handler.
nscon: sending NSPTAC packet
nscon: doing connect handshake...
nscon: nsctxinf[0]=0xd, [1]=0x9
nsconbrok: asking transport to enable NTOBROKEN
tnslsnr: connect string inst->lcxd[0]: (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc))
tnslsnr: connect string inst->lcxd[1]: (ADDRESS=(PROTOCOL=tcp)(HOST=d2_its_a.d2_its)(PORT=1521))
nsopen: opening transport...
nttcnp: Validnode Table IN use; err 0x0
nttcnp: getting sockname
nttcnr: waiting to accept a connection.
nttvlser: valid node check on incoming node 156.75.22.43
nttvlser: Accepted Entry: 156.75.22.43
nsopen: transport is open
nsnainit: inf->nsinfflg[0]: 0xd inf->nsinfflg[1]: 0xd
nsopen: global context check-in (to slot 6) complete
nsanswer: deferring connect attempt; at stage 2
nsevdansw: exit
nsevdansw: exit
nscon: doing connect handshake...
nscon: got NSPTCN packet
nsevdansw: exit
nsevdansw: exit
nsevdansw: exit
nsbeqaddr: connecting...
nsbeqaddr: doing connect handshake...
nsbequeath: doing connect handshake...
nsbequeath: REDIR="(ADDRESS=(PROTOCOL=tcp)(HOST=10.1.1.1)(PORT=1088))"
nsbeqaddr: handshake is complete; redirecting
nscon: sending NSPTRD packet
nstimarmed: no timer allocated
nsclose: closing transport
nsclose: global context check-out (from slot 6) complete
nsbeqaddr: connect handshake is complete
tnslsnr: connect string inst->lcxd[0]: (ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC0ipc))
tnslsnr: connect string inst->lcxd[1]: (ADDRESS=(PROTOCOL=tcp)(HOST=d2_its_a.d2_its)(PORT=1521))
0
Comment
Question by:jimgiles
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 1

Accepted Solution

by:
selvamsm earned 200 total points
ID: 6279658
Hi,
    You can try the follwing to narrow down the search so that we can pinpoint where the problem is

   1) change all machine names to it's corresponding ip address.

  2)Use TNSPING service_name from client to check whether
it can able to reach the listener

  3)On the trace on the client so that u can able to see where it is getting disconnected

  What i hope is almost this type of problem arises in the host name resolution only.So change the name in the tnsnames.ora and the listener.ora file to ip address.

  One more thing is that it seems u'r using the MTS server
so in the init.ora file explicitly represent the number of dispatchers to TCP protocol and in that specify the host.

MTS_DISPATCHERS = "(PROTOCOL=TCP)(DISPATCHER=1)(HOST=ip address)"

  Hope this will help u.If not send me the client trace also so that we can pinpoint where the problem is.

thanks
m.s.m.kumar


0
 
LVL 1

Expert Comment

by:lamija
ID: 6291230
0
 

Author Comment

by:jimgiles
ID: 6315620
To m.s.m.kumar:

Thanks for your answer. The problem was caused by the
fact that each server in the cluster has dual NICs.
Specifying the IP address in the Net8 setup for the
remote machines solved the problem.

Although I actually was helped by a previous comment to
a similar question on OTC, your answer is correct and
helpful.

Jim
0

Featured Post

Free Tool: Port Scanner

Check which ports are open to the outside world. Helps make sure that your firewall rules are working as intended.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Why doesn't the Oracle optimizer use my index? Querying too much data Most Oracle developers know that an index is useful when you can use it to restrict your result set to a small number of the total rows in a table. So, the obvious side…
From implementing a password expiration date, to datatype conversions and file export options, these are some useful settings I've found in Jasper Server.
This video shows how to copy a database user from one database to another user DBMS_METADATA.  It also shows how to copy a user's permissions and discusses password hash differences between Oracle 10g and 11g.
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…
Suggested Courses

777 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question