I joined the group to meet you experts, not because I think I am one of
the experts.
Here it is:
I ran into an error from my application server.
The server log said, ORA-12500: TNS:listener failed to start a
dedicated server process.
I checked the Internet and got to know it indicated something wrong
with the listener.
>From sqlnet.log, I got the following:
>>>
VERSION INFORMATION:
TNS for IBM/AIX RISC System/6000: Version 9.2.0.1.0 - Production
TCP/IP NT Protocol Adapter for IBM/AIX RISC System/6000: Version
9.2.0.1.0 - Production
Time: 18-OCT-2006 15:49:29
Tracing not turned on.
Tns error struct:
nr err code: 0
ns main err code: 12564
TNS-12564: TNS:connection refused
TNS-12564: TNS:connection refused
ns secondary err code: 0
ns secondary err code: 0
nt main err code: 0
nt main err code: 0
nt secondary err code: 0
nt secondary err code: 0
TNS-12564: TNS:connection refused
ns secondary err code: 0
nt main err code: 0
nt secondary err code: 0
>>>
The error repeated several times as well as the connection strings.
The strange is that I ran Oracle 10g client on my App server.
The version info says 10.1.0.3.0 from Sqlplus:
>>>
SQL*Plus: Release 10.1.0.3.0 - Production on Thu Oct 19 14:20:15 2006
Copyright (c) 1982, 2004, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.1.0.3.0 - 64bit
Production
With the Partitioning and Data Mining options
>>>
I had a previouse Oracle client/server installed, which was 9.2.0.5.0
as shown from tnsping
>>>
TNS Ping Utility for IBM/AIX RISC System/6000: Version 9.2.0.5.0 -
Production on 19-OCT-2006 14:07:24
Copyright (c) 1997 Oracle Corporation. All rights reserved.
>>>
Somehow, the sqlnet.log gave me a different version info 9.2.0.1.0 as
shown before.
Can anyone shed some light on this matter?
Thanks a lot.
Allen
Have you tried lsnrctl status? To verify version, log and status of the
listener.
Have you verified, by checking your Home Selector, what is the Oracle
Home you are actually running under.
What is the first BIN directory in your PATH?
Actually, it came out to 3. Oh well, Hope it helps.
I have not checked the lsnrctl status. Because my DBA is not in today.
:).
The Oracle home was verified, and pointing to 10g.
The first BIN directory is /bin.
By the way the App server is running on AIX 5.2 ML 6.
Thanks again for you time.
Allen
On the other hand, what I meant was to do, "echo $PATH" (No quotes), in
UNIX or "path"(no quotes) in WINDOWS and see if the ORACLE_HOME
directory appears in there.
Actually the Oracle DB was not down. The user who reported the problem
tried again with her operation,
then it finished properly.
It seemed just one time failure when trying to make the connection.
I checked the $PATH, the ORACLE_HOME was there.
When the sqlplus version was obtained, it was invoked from a random
folder,
which showed the Oracle executables were available.
Any other ideas about the issue?
Thanks and have a great weekend.
PS: There are a series of checks that you can do before you arrive at
the above solution.
Start from here:
Oracle04$ oerr ora 12500
12500, 00000, "TNS:listener failed to start a dedicated server process"
// *Cause: The process of starting up a dedicated server process
failed.
// The executable could not be found or the environment may be set up
// incorrectly.
// *Action: Turn on tracing at the ADMIN level and reexecute the
operation.
// Verify that the ORACLE Server executable is present and has execute
// permissions enabled. Ensure that the ORACLE environment is specified
// correctly in LISTENER.ORA. The Oracle Protocol Adapter that is being
// called may not be installed on the local hard drive. Please check
that
// the correct Protocol Adapter are successfully linked.
// If error persists, contact Oracle Customer Support.
Check env variable settings.Env variable settings check includes:
$ echo $ORACLE_HOME
$ echo $ORACLE_SID
$ echo $LD_LIBRARY_PATH
$ echo $PATH
$ echo $TNS_ADMIN --- optional(some cases this is not set.if not o/p
comes.NP!.But if it gives an o/p..check to see that it vomits the right
value)
-- all the obove MUST be set right!!!!
1> Have you tried $tnsping <sid_name> from a remote client or as the
mid-tier user? . What is the o/p you got?
2> Have you tried $lsnrctl status <listener_name> ? What was the o/p
here?
3> Is your PROCESSES parameter set to an appropriately high value to
accomodate the number of users etc pounding the DB?
---if it is good enough considering the number of users etc that
access your DB; there are chances that your application that connects
to the DB seem to have some connexion leaks etc(for egs: opens a cursor
and not closes it).
4> Have you tried bouncing the listener?
5> Verify the Oracle version, SQLNet version, and patched OS are all
compatible.
6> It wouldnt be a bad idea to skim through the alert logfile too.
7> If it is not a production box(where downtime wouldnt bother you
much> ...go ahead and bounce all services ..starting from DB LSNR,DB
and then the mid-tier.
regards,
Channesh