Oracle歸檔日誌清理

weizongze發表於2024-05-31

1、現象:
資料庫連線或查詢報錯,報錯類似如下

ORA-00257: archiver error. Connect internal only, until freed

2、原因:
資料庫歸檔空間耗盡,資料庫歸檔空間設定不足或短時間內有大批次資料更新操作,會造成此問題。

3、解決方式:
執行如下命令清理歸檔空間:

rman target / --進入rman

delete archivelog until time 'sysdate-7'; --刪除7天前的歸檔日誌,根據生產環境可調1天,1/2天等

delete archivelog all; --刪除當前所有歸檔日誌,確認無ogg,迪斯傑等使用歸檔日誌的邏輯同步軟體後方可執行。

4、改進建議:
修改歸檔存放位置。

歸檔開啟後,預設路徑為閃回區(db_recovery_file_dest),預設大小為2GB,建議修改歸檔路徑,修改後歸檔可用空間為指定目錄所在磁碟的可用空間。

archive log list --檢視歸檔路徑

alter system set log_archive_dest_1='location=/arch'; --修改歸檔路徑
alter system set log_archive_dest_10=''; --禁用閃回區

相關文章