?
Solved

ODBC connection to Oracle fails with ORA-12571: TNS Packet writer failure (#12571)

Posted on 2006-11-06
8
Medium Priority
?
3,056 Views
Last Modified: 2008-03-17
We have a new XP workstation. All other machines connect just fine. Windows Firewall is disabled. I am doing this as Admin. There are no desktop firewalls installed either. A trace output follows.

ODBC--Call Failed.
[Microsoft][ODBC driver for Oracle][Oracle]ORA-12571: TNS Packet writer failure (#12571)[Microsoft][ODBC Driver Manager]Driver's SQLSetConnectAttr failed IM006 0[Microsoft][ODBC Driver Manager]Driver's SQLSetConntectAttr failed(#0)


--- TRACE CONFIGURATION INFORMATION FOLLOWS --- New trace stream is "C:\orant\DISCVR31\trace.log.trc"
New trace level is 6
--- TRACE CONFIGURATION INFORMATION ENDS ---
nigini: entry
nigini: Count in NI global area now: 1
nigini: Count in NI global area now: 1
nrigbi: entry
nrigbni: entry
nrigbni: Unable to get data from navigation file tnsnav.ora
nrigbni: exit
nrigbi: exit
nigini: exit
niqname: Hst is already an NVstring.
niqname: Inserting CID.
niotns: entry
niotns: niotns: setting up interrupt handler...
niotns: Not trying to enable dead connection detection.
niotns: Calling address: (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=BEQ)(PROGRAM=oracle80)(ARGV0=oracle80ORCL)(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))')))(CONNECT_DATA=(SID=ORCL)(CID=(PROGRAM=C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE)(HOST=X225A)(USER=Administrator))))
nricall: entry
nric2a: entry
nric2a: Getting local community information
nriglp: entry
nriglp: Looking for local addresses setup by nrigla
nriglp: No addresses in the preferred address list
nriglp: exit
nric2a: TNSNAV.ORA is not present. No local communities entry.
nrigla: entry
nrigla: Getting local address information
nrigla: Address list being processed.
nrigla: No community information so all addresses are local
nrigla: exit
nridst: entry
nridst: Resolving address to use to call destination or next hop
nridst: Processing address list.
nridst: No community entries so iterate over address list
nridst: exit
nric2a: This is a local community access
nric2a: exit
nricall: Got routable address information.
nricall: Making call with following address information: (DESCRIPTION=(CONNECT_DATA=(SID=ORCL)(CID=(PROGRAM=C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE)(HOST=X225A)(USER=Administrator)))(ADDRESS=(PROTOCOL=BEQ)(PROGRAM=oracle80)(ARGV0=oracle80ORCL)(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))'))).
nricdt: entry
nricdt: Calling with outgoing connect data: (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=BEQ)(PROGRAM=oracle80)(ARGV0=oracle80ORCL)(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))')))(CONNECT_DATA=(SID=ORCL)(CID=(PROGRAM=C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE)(HOST=X225A)(USER=Administrator)))).
nscall: connecting...
nlpcaini: entry
nlpcaini: prg =
nlpcaini: arg[0] =
nlpcaini: arg[1] =
nlpcaini: exit
nsmal: 400 bytes at 0x8f13830
nsmal: 1664 bytes at 0x8f0a068
snsbitts_ts: acquired the bit
nsopen: opening transport...
nserror: nsres: id=0, op=65, ns=12560, ns2=0; nt[0]=530, nt[1]=0, nt[2]=0
snsbitts_ts: acquired the bit
nsopen: unable to open transport
snsbitts_ts: acquired the bit
nsmfr: 1664 bytes at 0x8f0a068
nsmfr: 400 bytes at 0x8f13830
nricdt: Call failed.
nricfg: entry
nricfg: exit
nricdt: Call made to destination.
nricdt: Processing address list so continuing.
nricdt: exit
nric2a: entry
nric2a: Getting local community information
nriglp: entry
nriglp: Looking for local addresses setup by nrigla
nriglp: No addresses in the preferred address list
nriglp: exit
nric2a: TNSNAV.ORA is not present. No local communities entry.
nrigla: entry
nrigla: Getting local address information
nrigla: Address list being processed.
nrigla: Processed all addresses in address list. Failed to make contact.
nrigla: exit
nric2a: exit
nricie: entry
nricie: Result descriptor: 12203,12560,530,0.
nricie: Result descriptor: 12203,12560,530,0 from Interchange:
nricie: exit
nricall: Exiting NRICALL with following termination result: -1.
nricall: exit
nioqper:  error from nricall
nioqper:    nr err code: 12203
nioqper:    ns main err code: 12560
nioqper:    ns (2)  err code: 0
nioqper:    nt main err code: 530
nioqper:    nt (2)  err code: 0
nioqper:    nt OS   err code: 0
niqme: entry
niqme:  reporting nr (1) error: (12203) as rdbms err (12203)
niqme: exit
niotns: Couldn't connect, returning 12203
nigtrm: Count in the NI global area is now 0
nrigbd: entry
nrigbd: exit
nigtrm: Count in the NL global area is now 0
0
Comment
Question by:mriozzo
[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
  • 3
8 Comments
 
LVL 65

Expert Comment

by:rockiroads
ID: 17881861
read this site, http://www.cryer.co.uk/brian/oracle/ORA12571.htm it reports the following


Possible causes and remedies:
With Oracle 8.0.4 onwards, this error may indicate that the database is in the process of being shut down.

This error has been observed when there was a loose cable connection to the SCSI disk array (on an Oracle Parallel Server system). Related errors were also subsequently noted in the NT event log.

If this is the cause then the remedy is to check all the cable connections. Do this by hand rather then visually, since a cable not being firmly in place could cause the problem.

Daniel Haller Strahm has reported that this problem can also be caused by an IP address conflict (Oracle 9.0.1). Windows will normally log an IP conflict in the event log and show a pop up alert - but only if it detects the conflict.

Check that no other computer on the network has the same IP address as the machine on which the problem has been reported.

Robert Wells has reported seeing this error when reinstalling Oracle 9.2.0.1 on Windows 2000. He says it got 46% through configuring the database before this error arose. The solution was to edit the sqlnet.ora file (locations on different systems will vary, but in this case was at D:/Data/ora920/network/admin/sqlnet.ora) and change the line:

SQLNET.AUTHENTICATION_SERVICES= (NTS)
into

SQLNET.AUTHENTICATION_SERVICES= (NONE)
after saving the updated file, he was able to hit the retry button on the install and the creation of the database succeeded.
0
 
LVL 65

Expert Comment

by:rockiroads
ID: 17881882
Do u have a metalink account? Look at Note 112589.1.

The suggestion is to modify the registry. Fire up REGEDIT and go to HKEY_LOCAL_MACHINESOFTWAREORACLE. Then add EPC_DISABLED and set the value to TRUE.

Another thing you can try is to change your SQLNET.ORA file to have the following line:

SQLNET.AUTHENTICATION_SERVICES = (NONE)



expertanswers website (sample of above) http://expertanswercenter.techtarget.com/eac/knowledgebaseAnswer/0,295199,sid63_gci1054737,00.html also says this

This can happen if the number of connections on a Windows server results in the total memory for the Oracle main thread exceeding the memory limitations for a single process (2 gigabytes with normal settings, 3 gigabytes with 3gt set). If you haven't set 3gt yet, do a lookup on MetaLink, or drop me an email, and see how to increase your memory size. If you have 3gt, look at using AWE memory windowing to move the database block buffers out of the lower memory and freeing it up for PGA (process) memory

0
 

Author Comment

by:mriozzo
ID: 17882250
I have already tried the SQLNET.AUTHENTICATION_SERVICES= (NONE) suggestion as well as adding the registry key. Same exact error.

If it helps:

C:\orant\BIN>tnsping
'tnsping' is not recognized as an internal or external command, operable program or batch file.

C:\orant\BIN>PATH
PATH=C:\orant\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem

Notice below, on a working installation the IP addresses is showing and connecting properly:

--- TRACE CONFIGURATION INFORMATION FOLLOWS ---
New trace stream is "C:\orant\DISCVR31\trace.log.trc"
New trace level is 6
--- TRACE CONFIGURATION INFORMATION ENDS ---
nigini: entry
nigini: Count in NI global area now: 1
nigini: Count in NI global area now: 1
nrigbi: entry
nrigbni: entry
nrigbni: Unable to get data from navigation file tnsnav.ora
nrigbni: exit
nrigbi: exit
nigini: exit
niqname: Using nnfsn2a() to build connect descriptor for (possibly remote) database.
nnftboot: entry
nnftboot: exit
nnfoboot: entry
nnfoboot: exit
nnfhboot: entry
nnfhboot: exit
nncpmlf_make_local_addrfile: construction of local names file failed
nncpmsf_make_sys_addrfile: system names file is C:\orant\NET80\admin\tnsnames.ora
nncpcin_maybe_init: first request sent to name server will have ID 333
nncpcin_maybe_init: initial retry timeout for all name servers is 1500 csecs
nncpcin_maybe_init: max request retries per name server is 1
nngsnad_new_stream_addr: "(ADDRESS=(PROTOCOL=TCP)(HOST=131.107.2.199)(PORT=1521))"
nngsini_init_streams: initializing stream subsystem, cache size is 10
nngtini_init_msg: initializing PDU subsystem, initial pool size is 2
nncpcin_maybe_init: default name server domain is world
nnfun2a: entry
nnftqnm: entry
nnfcagmd: entry
nnfcagmd: Attribute name a.smd is a predefined meta type, syntax is 4.
nnfcagmd: exit
nncpldf_load_addrfile: initial load of names file C:\orant\NET80\admin\tnsnames.ora
nncpldf_load_addrfile: success
nnftqnm: Using tnsnames.ora address (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 131.107.2.199)(PORT = 1521)) (CONNECT_DATA = (SID = ORCL))) for name ncm_ss.world
nnfcraa: entry
nnftans: entry
nnfcran: entry
nnfcran: 64 rrs requested, 1 remaining, 1 total
nnfcran: exit
nnfotrv1: entry
nnfotrv1: translated "ncm_ss.world" to (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 131.107.2.199)(PORT = 1521)) (CONNECT_DATA = (SID = ORCL)))
nngsfad_free_stream_addr: "(ADDRESS=(PROTOCOL=TCP)(HOST=131.107.2.199)(PORT=1521))"
nngsdei_deinit_streams: deinit
nngscls_close_stream: UID 0 not established, ignored
nngscls_close_stream: UID 0 not established, ignored
nngscls_close_stream: UID 0 not established, ignored
nngscls_close_stream: UID 0 not established, ignored
nngscls_close_stream: UID 0 not established, ignored
nngscls_close_stream: UID 0 not established, ignored
nngscls_close_stream: UID 0 not established, ignored
nngscls_close_stream: UID 0 not established, ignored
nngscls_close_stream: UID 0 not established, ignored
nngscls_close_stream: UID 0 not established, ignored
niotns: entry
niotns: niotns: setting up interrupt handler...
niotns: Not trying to enable dead connection detection.
niotns: Calling address: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=131.107.2.199)(PORT=1521))(CONNECT_DATA=(SID=ORCL)(CID=(PROGRAM=C:\orant\DISCVR31\DIS31USR.EXE)(HOST=X236)(USER=jgimprich))))
nricall: entry
nric2a: entry
nric2a: Getting local community information
nriglp: entry
nriglp: Looking for local addresses setup by nrigla
nriglp: No addresses in the preferred address list
nriglp: exit
nric2a: TNSNAV.ORA is not present. No local communities entry.
nrigla: entry
nrigla: Getting local address information
nrigla: Simple address...
nrigla: No community component so just use straight address
nrigla: exit
nridst: entry
nridst: Resolving address to use to call destination or next hop
nridst: Found destination address
nridst: Local address
nridst: Local destination community found
nridst: exit
nric2a: This is a local community access
nric2a: exit
nricall: Got routable address information.
nricall: Making call with following address information: (DESCRIPTION=(CONNECT_DATA=(SID=ORCL)(CID=(PROGRAM=C:\orant\DISCVR31\DIS31USR.EXE)(HOST=X236)(USER=jgimprich)))(ADDRESS=(PROTOCOL=TCP)(HOST=131.107.2.199)(PORT=1521))).
nricdt: entry
nricdt: Calling with outgoing connect data: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=131.107.2.199)(PORT=1521))(CONNECT_DATA=(SID=ORCL)(CID=(PROGRAM=C:\orant\DISCVR31\DIS31USR.EXE)(HOST=X236)(USER=jgimprich)))).
nscall: connecting...
nttbnd2addr: entry
nttbnd2addr: port resolved to 1521
nttbnd2addr: using host IP address: 131.107.2.199
nttbnd2addr: exit
nsmal: 400 bytes at 0x259084c
nsmal: 1664 bytes at 0x25901c8
nsopen: opening transport...
0
Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

 
LVL 65

Expert Comment

by:rockiroads
ID: 17882378
So can u run Oracle find by itself? SQL Plus is okay? Is your TNSNames entry setup correctly? remember it has to have a .WORLD on the end of the name

If not, then it could be something wrong with your oracle setup or envrionment


looking at the logs, in particular

Unable to get data from navigation file tnsnav.ora

this may be a clue.

So I had a dig around and found this http://www.experts-exchange.com/Databases/Oracle/Q_21491108.html
may not be applicable but may help.

0
 

Author Comment

by:mriozzo
ID: 17882631
Well LISTENER.ORA on the desktop is empty and init.ora should not have to be changed as all other workstations are connecting.

Something still appears to be blocking or redirecting the connection attempt.
0
 

Author Comment

by:mriozzo
ID: 17956280
Well I knew I should've tried this but I didn't think I had to since it was a new installation. I ran WinSock XP Fix and all was well. I'm guessing the McAfee Personal Firewall uninstaller didn't quite clean the registry the way it should've and port 1521 was being blocked.

Thanks to all for the suggestions.

0
 
LVL 1

Accepted Solution

by:
Computer101 earned 0 total points
ID: 18260671
PAQed with points refunded (500)

Computer101
EE Admin
0

Featured Post

Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

Question has a verified solution.

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

This article describes a method of delivering Word templates for use in merging Access data to Word documents, that requires no computer knowledge on the part of the recipient -- the templates are saved in table fields, and are extracted and install…
This article shows how to get a list of available printers for display in a drop-down list, and then to use the selected printer to print an Access report or a Word document filled with Access data, using different syntax as needed for working with …
In Microsoft Access, when working with VBA, learn some techniques for writing readable and easily maintained code.
Add bar graphs to Access queries using Unicode block characters. Graphs appear on every record in the color you want. Give life to numbers. Hopes this gives you ideas on visualizing your data in new ways ~ Create a calculated field in a query: …
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