ORA-12516 連接數上限報錯
1. 在linux端,切換到oracle用戶,使用系統用戶(sys)登入oracle數據庫
su - oracle
sqlplus / as sysdba
2. 查看當前oracle數據庫進程數(連接數)+ sessions數 和 進程數(連接數)上限 + sessions數上限
SQL> select count(*) from v$process; //當前oracle數據庫進程數(連接數)
SQL> select count(*) from v$session; //當前oracle數據庫sessions數
SQL> select value from v$parameter where name = 'processes'; //進程數(連接數)上限
SQL> select value from v$parameter where name = 'sessions'; //sessions數上限
SQL> show parameter processes //當前數據庫進程參數詳情
SQL> show parameter sessions //當前數據庫進程參數詳情
3. 修改進程數(連接數)+ sessions上限
SQL> alter system set processes=300 scope=spfile;
SQL> alter system set sessions=300 scope=spfile;
引用別人關於spfile的解釋:
注:此處如果提示錯誤:ORA-32001,則說明DB是以pfile啓動的,需要修改爲用spfile啓動,具體修改方法如下:
SQL>show parameter spfile查一下是使用什麼文件啓動的。
SQL> show parameter spfile;
要動態修改一定要用spfile啓動。如果現在是用pfile啓動,可以這樣切換成spfile啓動:
SQL>create spfile from pfile;
SQL>shutdown immediate;
SQL>startup;
用show paramer spfile 查看如果values對應有值,表示是spfile啓動的。否則就是pfile啓動的。
4. 重啓數據庫,使更改生效
SQL> shutdown
SQL> startup