Title: RE: Sun Solaris 8 - Listener failed to start a dedicated server p
hi  jacques,
I have a similar issue quite some time back., when everything was fine
at oracle level. Try finding problem at unix level. like memory being
less, heavy swapping.
In my case, it turned out to be unix memory problem. A reboot of
unix box solved it.
 
here are some of options to check..
 
Here are some options for an intermittent TNS-12500:

Intermittent TNS-12500 errors are caused by a lack of
resources on the server. Finding which resource is
depleted may be difficult.

1. The TNS-12500 can be a result of the 'processes'
parameter in the init<sid>.ora file being too low.

2. If the init.ora 'processes' parameter seems ok then you
may need to increase the Unix kernel parameters for the
maximum number of processes or users (for example, nproc
or maxuprc). Check the manuals for the Unix operating
system for more information on these parameters.


3. Check that you have adequate swap space.

4. Disable OTRACE. OTRACE is a tracing feature that can cause
many problems. OTRACE is enabled by default. To disable
OTRACE:

a. Stop the Oracle database.
b. Go to the $ORACLE_HOME/otrace/admin directory.
c. Delete all files with a '.dat' extension.
d. Restart the Oracle database.
Oracle support recommenda this...
5. Use the Multi-Threaded Server (MTS) option. MTS will fix
the problem since the listener does not spawn dedicated
server processes in this environment. MTS also cuts down
on the amount of resources being utilized by having
connections threaded through dispatchers and by having
shared server processes read dispatcher requests from
queues. To invoke MTS:

a. Stop the database
b. Modify the init<sid>.ora file to include these
parameters:

mts_dispatchers="<protocol>,<number of dispatchers to create>"
mts_max_dispatchers=<max number of dispatchers>
mts_servers=<number of shared servers to start>
mts_max_servers=<max number of shared servers>
mts_service=<SID name>
mts_listener_address=<address of the TNS listener>

An example of a working MTS configuration would be:

mts_dispatchers="tcp,3"
mts_max_dispatchers=10
mts_servers=2
mts_max_servers=4
mts_service=ORCL
mts_listener_address=
"(address=(protocol=tcp)(host=mars1)(port=1521))"

Please note for Oracle 8i the MTS configuration would be:

mts_dispatchers = "(protocol=tcp)(dis=2)"
mts_max_dispatchers = 4
mts_servers = 4
mts_max_servers = 6
local_listener =
"(ADDRESS_LIST = (ADDRESS=(PROTOCOL=TCP)(HOST=mars1)(PORT=1521)))"

c. Restart the database.
if above options donot work....
check following things...
Use the "truss" command to trace the system calls when you get the ORA-12500. Example:
truss -f -o error.log sqlplus
do you have any 32 bit versions and 64 bit database on the same box...
 
 
rg
naren
-----Original Message-----
From: eric harrington [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, May 23, 2001 11:05 AM
To: Multiple recipients of list ORACLE-L
Subject: RE: Sun Solaris 8 - Listener failed to start a dedicated server p

Jacques,
 
I've seen a similar error with processes and Solaris memory structures.  Someone mentioned increasing SEMMNS, this helped in my situation, however you can try decreasing the PROCESSES parameter temporarily (as low as possible) to test whether the Solaris memory setup is an issue.  There is a formula for sizing SEMMNS, cannot currently find it.
 
Good luck!
-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Jacques Kilchoer
Sent: Tuesday, May 22, 2001 5:26 PM
To: Multiple recipients of list ORACLE-L
Subject: RE: Sun Solaris 8 - Listener failed to start a dedicated server p

Thank you for the suggestions so far.
Rocky Welch suggesting increasing the "processes" parameter in the init.ora
I tried that with one of the 8.1.6 databases.
The "processes" parameter was set to 50, I increased it to 200, shut down that database, restarted the listener (lsnrctl>stop and lsnrctl>start) and restarted the database. I still got "ORA-12500: TNS:listener failed to start a dedicated server process" when trying to connect to that database from the client.

John Kangaraj has suggested checking the number of semaphores. I forgot to mention before that I had already looked at that also (I've been bitten by semaphores before.) I counted 780 semaphores being used (from ipcs) and 1024 being the maximum allowed (from /etc/system). (see below)

I'm still new to Sun Solaris and I'm totally stumped. Does anyone else have any other ideas? I really would prefer not running multi-threaded server (MTS) if I don't have to, which was one of the suggestions on Metalink.

Am I interpreting the available memory information correctly? (see below) For physical memory, I think I see 4GB available and 622 MB being used. As far as swap, I see approx. 4GB available.

---------------- semaphores
In /etc/system I see this:
set semsys:seminfo_semmns=1024

ipcs shows me this:

$ ipcs -sa
IPC status from <running system> as of Tue May 22 12:46:49 PDT 2001
T         ID      KEY        MODE        OWNER    GROUP  CREATOR   CGROUP NSEMS   OTIME    CTIME
Semaphores:
s    5505024   0x6f61806  --ra-r-----   oracle      dba   oracle      dba   204 12:46:49 13:02:49
s     262145   0          --ra-r-----   oracle      dba   oracle      dba    50 17:52:20 10:46:15
s    1703938   0x2f18d66  --ra-ra----   oracle      dba   oracle      dba    59 12:42:31 14:12:02
s     983043   0xc934c46  --ra-r-----   oracle      dba   oracle      dba    54  1:25:44 13:03:40
s     524292   0x81a8556  --ra-r-----   oracle      dba   oracle      dba    79 12:46:34 13:06:43
s    2424837   0x40b7ad6  --ra-r-----   oracle      dba   oracle      dba   204  1:29:56 13:07:46
s     589830   0          --ra-r-----   oracle      dba   oracle      dba    50 12:06:06 19:22:22
s    1048584   0          --ra-r-----   oracle      dba   oracle      dba    80  4:03:18 15:55:22
Total: 780
----------------- end of semaphore information


----------------- physical memory
$ /usr/sbin/prtconf | grep -i mem
Memory size: 4096 Megabytes
    memory (driver not attached)
    virtual-memory (driver not attached)
$ ipcs -pmb
IPC status from <running system> as of Tue May 22 13:15:58 PDT 2001
T         ID      KEY        MODE        OWNER    GROUP      SEGSZ  CPID  LPID
Shared Memory:
m          0   0x5000005b --rw-r--r--     root     root          4   417   417
m       4201   0x9167ce10 --rw-r-----   oracle      dba   58998784 26660  7608
m        802   0x63973b5c --rw-r-----   oracle      dba    5824512 16908  5642
m       1403   0xc7294a0c --rw-rw----   oracle      dba   18743296  7115  7584
m        604   0x826b2278 --rw-r-----   oracle      dba   93601792 27580  7251
m       1005   0x59b783a4 --rw-r-----   oracle      dba  146014208  1066  7579
m       1807   0xc6e2a74  --rw-r-----   oracle      dba    4268032 13480  4674
m       2809   0x27a21464 --rw-r-----   oracle      dba  325394432 26885 17005
----------------- end of physical memory information

----------------- swap space
$ /usr/sbin/swap -s
total: 910872k bytes allocated + 2232248k reserved = 3143120k used, 4208264k available
----------------- end of swap space information

Reply via email to