清理Oracle歸檔日誌

  • 文檔創建者:Roxy
  • 編輯次數:6
  • 最近更新:Nikozhan 于 2026-01-26
  • 1. 概述

    Oracle 啟動歸檔日誌的狀態下,會在指定的歸檔日誌目錄生成大量的日誌檔案,而且這些日誌檔案預設是不會定期清理。長時間運作後,會佔用大量的儲存空間,最終可能導致 Oracle 沒有足夠的空間維持啟動狀態。

    若磁碟空間滿了會影響業務,因此需要定期清理過期歸檔日誌。

    在 Oracle 的控制檔案中記錄着每一個歸檔日誌檔案的相關資訊。當手動刪除了歸檔日誌的物理檔案後,控制檔案中依然記錄着已刪除的歸檔日誌資訊。所以當我們刪除歸檔日誌檔案時,不僅需要刪除物理檔案,還要刪除控制檔案中對應的資訊。

    2. 準備工作

    確定歸檔日誌位置,歸檔日誌路徑不一定相同,如果不清楚歸檔日誌在哪,可以透過命令find / -name *.dbf尋找。

    3. 方法一:rman刪除歸檔日誌

    這種方法,可以將控制檔案中記錄資訊和物理檔案同步刪除,更為方便。

    3.1 查看控制檔案記錄

    登入 rman 。

    使用命令:rman target /

    可以看到已經進入RMAN。

    使用命令查看所有歸檔日誌資訊:

    list archivelog all;

    3.2 刪除指定日期前日誌

    使用命令刪除 3 天前的歸檔日誌,在刪除控制檔案記錄的同時,也會將物理檔案刪除。

    delete archivelog all completed before 'SYSDATE - 3';

    在確認位置輸入 YES 即可成功刪除。

    3.3查看物理檔案

    在上一步中刪除的檔案,觀察物理檔案列表後,可以看到物理檔案也會被同步刪除。

    4. 方法二

    如果之前手動刪除過物理檔案,可以查看這個方法,將控制檔案中歸檔日誌記錄刪除

    4.1 刪除物理檔案

    刪除物理檔案:xxxx.dbf

    進入存放dbf檔案的位置,然後使用命令:

    rm -f 檔案名稱.dbf

    4.2 查看控制檔案

    透過如下命令查看Oracle控制檔案記錄歸檔日誌資訊,發現"xxx.dbf"還存在

    登入rman。

    使用命令:rman target /

    可以看到已經進入RMAN。

    使用命令查看所有歸檔日誌資訊:

    list archivelog all;

    4.3 對比檢查歸檔日誌物理檔案和控制檔案一致

    如果之前已經刪除過物理檔案,並沒有刪除控制檔案中的資訊,請看如下操作:

    crosscheck archivelog all;

    優先使用這個命令,覈驗比對物理檔案和歸檔日誌記錄資訊一致

    list expired archivelog all;

    crosscheck 後,可以使用這個命令,查看有哪些過期的日誌檔案

    4.4 刪除過期檔案

    delete expired archivelog all;

    刪除過期日誌檔案,在執行命令後,會提示你將要刪除哪些過期的日誌檔案



    附件列表


    主題: 實時管道
    已經是第一篇
    已經是最後一篇
    • 有幫助
    • 沒幫助
    • 只是瀏覽
    • 评价文档,奖励 1 ~ 100 随机 F 豆!

    滑鼠選中內容,快速回饋問題

    滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

    不再提示

    10s後關閉

    獲取幫助
    線上支援
    獲取專業技術支援,快速幫助您解決問題
    工作日9:00-12:00,13:30-17:30在线
    頁面反饋
    針對當前網頁的建議、問題反饋
    售前咨詢
    業務咨詢
    電話:0933-790886或 0989-092892
    郵箱:taiwan@fanruan.com
    頁面反饋
    *問題分類
    不能為空
    問題描述
    0/1000
    不能為空

    反馈已提交

    网络繁忙