TNS-12540: TNS: internal limit restriction exceeded, tns-12540tns
The TNS-12518: TNS: listener cocould not hand off client connection and TNS-12540: TNS: internal limit restriction exceeded error appears in the listener. log listening log, as shown below, the user cannot connect to the ORACLE database:
27-JAN-2015 10:10:19 * (CONNECT_DATA = (SERVICE_NAME = scm2) (CID = (PROGRAM = c: \ windows \ system32 \ inetsrv \ w3wp.exe) (HOST = POS) (USER = SYSTEM )))
* (ADDRESS = (PROTOCOL = tcp) (HOST = 192.168.xxx.xxx) (PORT = 1667) * establish * scm2 * 12518
TNS-12518: TNS: listener cocould not hand off client connection
TNS-12540: TNS: internal limit restriction exceeded
27-JAN-2015 10:10:19 * (CONNECT_DATA = (SERVICE_NAME = scm2) (CID = (PROGRAM = c: \ windows \ system32 \ inetsrv \ w3wp.exe) (HOST = CEGWEB1) (USER = NETWO
RK? SERVICE) * (ADDRESS = (PROTOCOL = tcp) (HOST = 192.168.xxx.xxx) (PORT = 1284) * establish * scm2 * 12518
TNS-12518: TNS: listener cocould not hand off client connection
TNS-12540: TNS: internal limit restriction exceeded
In addition, no error information is found in the alarm log. Check the memory and find that the physical memory is only MB, but Swap still has 56m.
Check that the processes parameter value is 870 and the session value is 10000. At that time, the maximum number of sessions in the database is 419 and the historical maximum value is 720. It should be excluded that the processes and session parameter values are too small.
View information about the TNS-12540: TNS: internal limit restriction exceeded error in the official documentation, as shown below:
TNS-12540: TNS: internal limit restriction exceeded
Cause: Too many TNS connections open simultaneously.
Action: Wait for connections to close and re-try.
TNS-12540/ORA-12540: TNS: internal limit restriction exceeded and TNS-00510: Internal limit restriction exceeded
Cause: An internal limit has been exceeded. Possible limits include:
Number of open connection that Oracle Net can process simultaneously
Number of memory buffers which can be used simultaneously
Number of processes a participant database instance is allowed
The first two are examples of hard limits. the third is an example of a limit which can be increased by setting PROCESSES parameter in the database initialization file to a larger value. in this case, a TNS-12500/ORA-12500 error is also returned. in some cases, these errors can be caused by the same conditions which cause TNS-12549/ORA-12549 and TNS-00519 errors.
Action: Perform these steps:
Wait for the open connections to close and retry. If the error persists, then check the sqlnet. log or listener. log file for detailed error stack information.
ORA-12540: TNS: internal limit restriction exceeded
Cause: Too many TNS connections open simultaneously.
Action: Wait for connections to close and re-try.
This error is not an indication of a network problem unless it occurs on all connections (in other words you have never been to connect). If so it is a. ora configuration problem.
If you can make connections up to a certain point but then fails it is an indication of a resource limitation at the OS level (this sounds like your scenario)
Typical problems are:
Out of system memory/swap
Out of process slots in the process table
Streams resources depleted
Physical connections allows by the kernal.
Out of File Handles
View All resource limits of the current system.
[orxxm@xxxx ~]$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 193217
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 65536
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 4194302
cpu time (seconds, -t) unlimited
max user processes (-u) 16384
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
To solve the problem, I immediately restarted the listening service and solved the problem. But why did this error occur? I searched a lot of materials and did not see similar cases. Of course, during the check process, I also found that some applications use DEDICATED to connect to the database, so that relevant personnel can change the connection mode of the Shared Server, finally, you still cannot find the exact cause of the TSN-12540 error. After a long time of study, the problem still cannot be solved.
References:
Http://www.dba-oracle.com/t_ora_12540_tns_internal_limit_restriction_exceeded.htm
Http://database.ccidnet.com/art/1105/20060601/569461_1.html
Http://blog.itpub.net/81018/viewspace-812609/