連接配接資料庫進去提示ora-00257:archiver error.Connect internal only,until freed.
登入伺服器,作業系統驗證,登入好久登入不進去
無奈,把oracle服務重新開機了下,終于登入進去了
查詢v$archived_log
裡面有2條歸檔日志記錄,但是在磁盤上怎麼找都找不到
select * from V$FLASH_RECOVERY_AREA_USAGE;--顯示歸檔日志占用閃回恢複區有98%
select sum(percent_space_used)*2/100 from v$flash_recovery_area_usage;--顯示使用2.9個G(閃回恢複區的大小是2G)
使用RMAN
list copy;--顯示這2條歸檔日志記錄
使用delete archivelog all;--删除控制檔案中的歸檔日志記錄
删除之後,
select * from V$FLASH_RECOVERY_AREA_USAGE;--顯示使用率為0
select sum(percent_space_used)*2/100 from v$flash_recovery_area_usage;--顯示使用為0
select * from v$log;--發現每個日志的大小是1個G,汗...
怪不得,兩個日志一歸檔就把閃回恢複區給塞滿了
由于是測試庫,且有每日邏輯備份,在mount模式下,把歸檔關閉:alter database noarchivelog;
修改每個日志檔案的大小是100M
alter database add logfile group 4 'D:\DB_ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO04.LOG' size 100M;
alter database add logfile group 5 'D:\DB_ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO05.LOG' size 100M;
alter database add logfile group 6 'D:\DB_ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO06.LOG' size 100M;
切換日志使得1、2、3組不成為目前組
alter database drop logfile group 1;
alter database drop logfile group 2;
alter database drop logfile group 3;
總結:實體删除歸檔日志,由于控制檔案上還記錄着相關資訊,空間沒有釋放,需要在RMAN中删除歸檔日志,才算真正地删除