您好,登錄后才能下訂單哦!
今天java開發在連接線上的oracle大量導數據,一會提示連接不上數據庫了。我本地用sqldeveloper也連接不上。
登錄到服務器,重啟oracle,本地還是不能連接。
在xshell里面登錄oracle
# su - oracle
# sqlplus / as sysdba 連接Oracle
提示要輸入用戶名和密碼。
并報錯ORA-00020: maximumnumber of processes (300) exceeded
根據報錯信息是由于processes進程數達到了最大值。
常規方法無法登錄,我們連接時候要加上-prelim參數
# sqlplus -prelim/ as sysdba 這樣終于登錄進Oracle的SQL界面
【參考http://blog.sina.com.cn/s/blog_ad6555610101ar4t.html 、 http://blog.sina.com.cn/s/blog_ad6555610101ar46.html】
SQL> set linesize 500;
SQL> show parameter processes;
可以看到默認的processes設置的是300. 太小了,稍后我們得改一改。
系統生產系統,不能重啟數據庫,好在系統過了一會兒恢復正常了。主要是因為大量數據庫的插入修改操作造成的。
解決方案:
在系統空閑時,修改系統processes參數為1000,重啟數據庫。【processes參數是靜態參數,修改后需要啟動數據庫。】
SQL> alter system set processes=1000 scope=spfile;
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP;
SQL> show parameter processes;
可以看到現在processes 參數被改成1000了。
我們再執行
SQL> show parameter spfile; 看下spfileora11g.ora文件的路徑
然后退出oracle控制臺,到shell終端界面。
# cp /data/oracle/product/11.2.0/db_1/dbs/spfileora11g.ora/tmp
# vim /tmp/spfileora11g.ora 【這是個二進制文件,打開會顯示部分亂碼,但是我們能看到processes=1000,說明已經寫入配置文件了】
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。