TNS-00510 Internal limit restriction exceeded Cause Too many files or sockets open simultaneously (or some other resource has been depleted). Action For further details, trace the Operation for PRotocol details. TNS-12500 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 re-execute 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. Check that the correct Protocol Adapter are sUCcessfully linked. If the error persists, contact Oracle Customer Support. TNS-12540 TNS:internal limit restriction exceeded Cause Too many TNS connections open simultaneously. Action Wait for connections to close and retry. TNS-12560 TNS:protocol adapter error Cause A generic protocol adapter error occurred. Action Check addresses used for proper protocol specification. Before reporting this error, look at the error stack and check for lower level transport errors.For further details, turn on tracing and re-execute the operation. Turn off tracing when the operation is complete. 問:進(jìn)程的數(shù)量會引起監(jiān)聽器錯誤嗎? TNS-12500: TNS:listener failed to start a dedicated server process TNS-12540: TNS:internal limit restriction exceeded TNS-12560: TNS:protocol adapter error TNS-00510: Internal limit restriction exceeded IBM/AIX RISC System/6000 Error: 11: Resource temporarily unavailable 我們在監(jiān)聽器日志中發(fā)現(xiàn)如上的錯誤信息。服務(wù)器上每個用戶的最大進(jìn)程數(shù)量被設(shè)置600 Oracle中的最大進(jìn)程數(shù)量為600。進(jìn)程最大的利用率是482,每個會話的最大利用率是490。會話的數(shù)量設(shè)置為840。 根據(jù)我所了解的,看起來進(jìn)程的數(shù)量是沒有問題的。我們通過在這個機(jī)器上無法正確建立內(nèi)存分頁空間而對此進(jìn)行了證實,然而,一些人仍然告訴我們要在起始的時候增加進(jìn)程的數(shù)量。我不同意這個觀點。我遺漏了什么嗎? 答:TNS-510錯誤信息顯示了有太多的文件或者socket同時開放了(或者是其他一些資源耗盡了)。這是操作系統(tǒng)的限制,不是Oracle的限制。你需要確認(rèn)你的AIX平臺可以處理你在服務(wù)器上開放的這么多的文件。這是“全部”文件,并不僅僅是Oracle數(shù)據(jù)庫文件。并且,你還需要確認(rèn)你的AIX服務(wù)器可以正確處理全部數(shù)量的Oracle進(jìn)程,而不僅僅是專用的服務(wù)器進(jìn)程。Oracle的起始參數(shù)PROCESSES限制了專用的服務(wù)器進(jìn)程數(shù)量。但是還有后臺的進(jìn)程(SMON, PMON, LGWR等),以及支持并行語句的進(jìn)程,更不用說你的監(jiān)聽器等了。我覺得你應(yīng)該配置AIX來答應(yīng)每個Unix用戶擁有更多的進(jìn)程。 總結(jié):TNS-12500,TNS-12540,TNS-12560,TNS-00510解決過程 一 環(huán)境: 1 平臺: IBM AX360,4G內(nèi)存 windows 2k advServer sp3 + oracle 816 獨占模式 2 內(nèi)存分配相關(guān)參數(shù)
D:/oracle/ora81/bin>orastack oracle.exe 500000 Couldn't open file with CreateFile() GetLastError() == 32
停止oracle服務(wù)和TNS服務(wù),再運行以上命令
D:/oracle/ora81/bin>orastack oracle.exe 500000 Dump of file oracle.exe Current Reserved Memory per Thread = 1048576 Current Committed Memory per Thread = 4096 New Reserved Memory per Thread = 500000 D:/oracle/ora81/bin>orastack tnslsnr.exe 500000 Dump of file tnslsnr.exe Current Reserved Memory per Thread = 1048576 Current Committed Memory per Thread = 4096 New Reserved Memory per Thread = 500000