ORA-12537錯誤的解決

eric0435發表於2012-10-31
SQL> conn sys/system@jytest as sysdba
ERROR:
ORA-12537: TNS:connection closed

1.processes引數設定太小。
進入設定processes方法:
Oracle的sessions和processes的關係是
         sessions=1.1*processes + 5
使用sys,以sysdba許可權登入:
SQL> show parameter processes;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ---------------------------------------
aq_tm_processes                      integer     1
db_writer_processes                  integer     1
job_queue_processes                  integer     10
log_archive_max_processes            integer     1
processes                            integer     150
SQL> alter system set processes=400 scope = spfile;
系統已更改。
SQL> show parameter processes;
NAME                                 TYPE        VALUE
------------------------------------ ----------- -----------------------------------------
aq_tm_processes                      integer     1
db_writer_processes                  integer     1
job_queue_processes                  integer     10
log_archive_max_processes            integer     1
processes                            integer     150
SQL> create pfile from spfile;
而我出現這個故障不是processes引數設定太小造成的
2記憶體使用完了
當OS的記憶體使用率達到90%以上時,既使是還可以再建立100個程式,但此時由於OS再也分配不出更多的記憶體來給ORACLE的服務程式了,所以監聽器就沒辦法給進來和客戶端連線啟動一個專用的ORACLE SERVER PROCESS(我們知道,在DEDICATED SERVER模式,一個客戶端連線的建立,ORACLE就會啟動一個專用的SERVER PROCESS來服務這個客戶端連線)。我們來檢查一下OS的記憶體狀況:
[oracle@weblogic28 ~]$ free
             total       used       free     shared    buffers     cached
Mem:      32949872   32709700     240172          0     213204   22118944
-/+ buffers/cache:   10377552   22572320
Swap:     32764556     600696   32163860
果然,OS的記憶體使用率已達99%了。
解決方法:
增加ORACLE伺服器的實體記憶體或減少其它軟體所用記憶體

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26015009/viewspace-748012/,如需轉載,請註明出處,否則將追究法律責任。

相關文章