ORA-00257 歸檔日誌過大導致無法儲存的解決辦法

來源:互聯網
上載者:User

ORA-00257 歸檔日誌錯誤解決方案

在實際項目中遇到了ORA-00257錯誤(空間不足錯誤),通過尋找資料,絕大部分說這是由于歸檔日誌太多,佔用了全部的硬碟剩餘空間導致的,通過簡單刪除日誌或加大儲存空間就能夠解決。

診斷過程:

(1)查看資料庫REDOLOG情況:

SQL> conn /@dmsasc as sysdba

SQL> select * from v$log;
發現ARC欄位值為NO,表示系統沒法自動做歸檔。

檢查一下歸檔目錄和log sequence:

SQL> archive log list;

(2)手工切換日誌:

SQL> alter system switch logfile;

ORA-01013: 使用者請求取消當前的操作

在等待長時間沒反應後,中斷操作,手工切換日誌沒有成功。

(3)查看FLASH_RECOVERY_AREA空間使用方式:

SQL> select * from v$recovery_file_dest;

計算flash recovery area已經佔用的空間:

SQL> select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;

FLASH_RECOVERY_AREA空間已使用了2.35GB

SQL> select * from v$flash_recovery_area_usage;
歸檔日誌空間已使用了多少百分比,發現ARCHIVELOG占近93.96%,這樣FLASH_RECOVERY_AREA空間的空間已經被完全佔據了。

(4)找到recovery目錄:

SQL> show parameter recover;


解決過程:

(1)根據資料庫目前可用儲存空間為200GB、FLASH_RECOVERY_AREA空間為8GB的實際情況,把FLASH_RECOVERY_AREA的空間修改為20GB。

SQL> alter system set DB_RECOVERY_FILE_DEST_SIZE=20g;

SQL> select * from v$recovery_file_dest;

(2)再檢查日誌狀態,發現REDOLOG處於正常的歸檔狀態:ARC YES

SQL> select * from v$log;
SQL> select * from v$flash_recovery_area_usage;


(3)轉移或清除對應的歸檔日誌, 刪除一些不用的日期目錄的檔案,注意保留最後幾個檔案,注意在刪除歸檔日誌後,必須用RMAN維護控制檔案,否則空間顯示仍然不釋放。

rman target sys/XXXX@XXX (資料庫使用者名稱/密碼)

RMAN> crosscheck archivelog all; //檢查一些無用archivelog
RMAN> delete expired archivelog all; //刪除到期歸檔

delete archivelog until time 'sysdate-1'; //刪除截止到前一天的所有archivelog

(4)再次檢查發現使用率正常:

SQL> select * from v$flash_recovery_area_usage;

(5)重啟Oracle(注意在archive log模式下不能正常startup情況下)

SQL> shutdown immediate;

SQL> startup mount;

SQL> alter database noarchivelog;
SQL> alter database open;
SQL> shutdown immediate;

SQL> startup mount;
SQL> show parameter log_archive_dest;

SQL> alter database archivelog; //恢複成archive log模式
SQL> archive log list;
SQL> shutdown immediate;

SQL> startup;

SPFILE 錯誤導致資料庫無法啟動(ORA-01565)

ORA-01172、ORA-01151錯誤處理

ORA-00600 [2662]錯誤解決

ORA-01078 和 LRM-00109 報錯解決方案

ORA-00471 處理方法筆記

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.