ORA-12520錯誤解決方法

cyzero發表於2013-01-20

ORA-12520錯誤解決方法 
ORA-12520聽程式無法為請求的伺服器型別找到可用的處理程式:
1)資料庫是專用伺服器,但是在tnsname.ora配置中設定了連線方式為shared,這種情況下開啟tnsname.ora, 
   把(server = shared) 改成 (server = dedicate) 
2)是由於process不夠引起的 
後來檢視到v$process一直漲到140多,而我的資料庫設定的是150.據此大致能斷定process不夠,用以下語句修改資料庫的processes值 
alter system set processes=500 scope=spfile(由於processes是靜態引數,scope只能為spfile,在v$sgastate條件為'procesees'中可以看到會每個process會點4個位元組), 
重新啟動資料庫使新改的processes生效.再重新跑eclipse,就能正常啟動了. 

note:如果在hibernate中的hibernate.connection.provider_class選擇的是c3p0的就會出這種情況,其它的好像不會.很奇怪為什麼c3p0會開啟那麼多個processs, 在shared連勢接方式下,shared_server即是一直連在資料庫的process值,注意這點

 

當前的連線數 
select count(*) from v$process; 

設定的最大連線數(預設值為150) 
select value from v$parameter where name = 'processes'; 

修改最大連線數 
alter system set processes = 300 scope = spfile; 

相關文章