close
Archive process error: ORA-16038: log 1 sequence# 1043 cannot be archived
ORA-19809: limit exceeded for recovery files
ORA-00312: online log 1 thread 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG'

看到的解決方法
http://www.skyage.cn/blog/read.php?222

以下為翻譯過和整理的:
一、今天打開資料出現以下情況,實例已經啟動和資料庫已經裝載,但資料不能打開。
SQL> startup;
ORACLE instance started.

Total System Global Area 230686720 bytes
Fixed Size 788268 bytes
Variable Size 196081876 bytes
Database Buffers 33554432 bytes
Redo Buffers 262144 bytes
Database mounted.

事件檢示器的內容:
ORA-16038: 日誌 1 序列號 221 無法歸檔
ORA-19809: 超出了恢復檔數的限制
ORA-00312: 聯機日誌 1 線程 1:
'D:\ORACLE\PRODUCT\10.1.0\ORADATA\XHPOS103\REDO01.LOG'

情況應該是快速閃回區空間設定為2G,也由於手工刪除了歸檔日誌,但歸檔日誌的資訊應該還存的資料庫裏。後來用以下方法來解決了。

//將快閃空間改成更高
SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=4G SCOPE=BOTH;
System altered.

已經卸載資料庫。
ORACLE 常式已經關閉。

SQL> startup;
ORACLE instance started.

//資料庫可以打開了
//然後用RMAN連接到目標資料庫刪除不可以的歸檔日誌,資料庫用mount啟動。
SQL>shutdotn immediate
SQL>startup mount
RMAN> connect target sys/syspass@xhpos103
RMAN> crosscheck archivelog all;
RMAN> DELETE NOPROMPT EXPIRED COPY;
//然後再將快閃空間改回原來的大小

SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=2G SCOPE=BOTH;
系統已更改。

SQL> SHUTDOWN IMMEDIATE;
資料庫已經關閉。
已經卸載資料庫。
ORACLE 常式已經關閉。

SQL> startup;
ORACLE instance started.
Database mounted.
Database opened.
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 sunyo 的頭像
    sunyo

    路過MIS的睏貓

    sunyo 發表在 痞客邦 留言(0) 人氣()