天天看點

oracle報錯00020,oracle啟動 ORA-00020: maximum number of processes (%s) exceeded錯誤

Oracle遊标數錯誤解決ORA-00020: maximum number of processes (%s)

今天在使用過程中,oracle突然挂掉,再次嘗試啟動提示:ORA-00020: maximum number of processes (%s) exceeded?網上查找了下,預設的遊标數偏小,需要加大oracle最大遊标數

修改設定Oracle最大遊标數

SQL> show parameter open_cursor

NAME                                TYPE        VALUE

------------------------------------ ----------- ------------------------------

open_cursors                        integer    300

SQL> alter system set open_cursors=800 scope=both;

系統已更改。

SQL> show parameter open_cursor

NAME                                TYPE        VALUE

------------------------------------ ----------- ------------------------------

open_cursors                        integer    800

SQL>

如果提示下面這個錯誤,照下面步驟操作 就行了

ORA-32001: 已請求寫入 SPFILE, 但是在啟動時未指定SPFILE

問題:SQL>alter system set open_cursors=800 scope=both;

alter system set open_cursors=800 scope=both;

*

ERROR 位于第 1 行:

ORA-32001: 已請求寫入 SPFILE, 但是在啟動時未指定 SPFILE

我怎樣做,這個錯誤才不會出現啊?

各位大蝦,誰能說詳細點,我搞不太清楚!

思路:

這是因為你啟動時沒有使用spfile,而你在修改參數時指定了spfile,是以報錯。産生一個spfile,然後使用這個spfile重新開機資料庫即可。具體步驟如下:

1、确定$ORACLE_HOME/dbs/下沒有spfile檔案,有的話改個名備份吧。

2、以sysdba使用者啟動資料庫到任何狀态(nomoutn、mount或open),執行create spfile from pfile。

2、shutdown immediate;

3、startup

再執行你的語句alter system set open_cursors=800 scope=both;