一個關於資料庫閃回區問題的處理

foxmile發表於2008-04-21
今日接到同事的一個問題,資料庫在startup的時候報:
ora-16038:日誌1序列號1588無法歸檔
ora-19809:超出了恢復檔案數的限制
ora-00312聯機日誌1執行緒1:'Z:\ORADATA\JLMHKCZDB\REDO01.LOG'
環境是雙機熱備、oracle10g
查了一下資料,發現這個問題的主要原因是因為閃回區空間不夠了。oracle10g在預設情況下,歸檔日誌是儲存在閃回恢復區的,如果你建庫的時候用的預設設定,閃回恢復區應該是2G,空間被佔滿了以後就無法再歸檔了。

1.將歸檔設定到其他目錄,修改alter system set log_archive_dest = 其他路徑

2.轉移或者刪除閃回恢復區裡的歸檔日誌。

3.增大閃回恢復區。ALTER SYSTEM SET db_recovery_file_dest_size=3g

4.另外,如果要撤銷閃回恢復區,把初始化引數 DB_RECOVERY_FILE_DEST 的值清空即可

先做準備工作,首先備份初始化檔案:
create pfile='d:\initmhk.ora' from spfile;
然後將資料庫檔案透過複製至另外一個目錄。
然後開始進行修改。

因為那邊是生產環境,在確保環境不發生意外的情況下,選擇暫時增加閃回區,那邊閃回區目前是64g,改為65g

SQL> shutdown immediate;
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> shutdown immediate;
ORA-01012: not logged on
SQL> create pfile='initmhk.ora' from spfile;

檔案已建立。

SQL> create pfile='d:\initmhk.ora' from spfile;

檔案已建立。

SQL> show parameter recov
ORA-01034: ORACLE not available


SQL> startup;
ORACLE 例程已經啟動。

Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145488364 bytes
Database Buffers           25165824 bytes
Redo Buffers                 524288 bytes
資料庫裝載完畢。
資料庫已經開啟。
SQL> show parameter recov

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      D:\oracle\product\10.1.0\flash
                                                 _recovery_area
db_recovery_file_dest_size           big integer 3G
recovery_parallelism                 integer     0
SQL> shutdown immediate;
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> startup mount;
ORACLE 例程已經啟動。

Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145488364 bytes
Database Buffers           25165824 bytes
Redo Buffers                 524288 bytes
資料庫裝載完畢。
SQL> ALTER SYSTEM SET db_recovery_file_dest_size=65g;

系統已更改。
SQL> alter database open;

資料庫已更改。

SQL> select reason,object_type,suggested_action from dba_outstanding_alerts;

未選定行

SQL>






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

相關文章