無法刪除RMAN到期備份

來源:互聯網
上載者:User

RMAN> report obsolete

直接delete會報這個錯誤:
RMAN> delete obsolete;
RMAN 保留原則將應用於該命令
將 RMAN 保留原則設定為冗餘 1
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=136 devtype=DISK
釋放的通道: ORA_DISK_1

crosscheck也不行
RMAN> crosscheck backup;
a分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=136 devtype=DISK
釋放的通道: ORA_DISK_1

解決方式:
  1、重建控制檔案。
  絕對好使,但是代價較大,不僅之前備份統統無效,而且還需要停資料庫服務,由於要操作的是一台較重要的生產伺服器,因此這種方法不可行。
  2、通過rman命令手工將備份組狀態置為unavailable。
  RMAN提供了一個change命令,可以修改備份組狀態為AVAILABLE/UNAVAILABLE/UNCATALOG等等。手工使用該命令將所有不可訪問的備份組置為unavailable,修改完狀態後等待控制檔案自動更新覆蓋失效記錄即可。這種方式最大的問題是見效太慢。
  注意,nocatalog模式才能使用這種方式。
  3、藉助dbms_backup_restore包直接刪除備份片段。通過dbms_backup_restore.deleteBackupPiece過程刪除無法訪問的備份組。
       dbms_backup_restore.deleteBackupPiece的定義如下:
前6項參數都需要我們指定,這些參數的參數值可以從v$backup_piece中獲得。
SQL> select recid,stamp,set_stamp,set_count,handle,piece# from v$backup_piece;

     RECID      STAMP SET_STAMP SET_COUNT HANDLE                             PIECE#
---------- ---------- ---------- ---------- ------------------------------ ----------
     11301 674167385 674167385      11411 c-1984618042-20081222-00                1
     11304 674168006 674168005      11414 c-1984618042-20081222-01                1
     11306 674168089 674168089      11416 c-1984618042-20081222-02                1
     11312 674253707 674253707      11422 c-1984618042-20081223-00                1
     11315 674254316 674254315      11425 c-1984618042-20081223-01                1
     11317 674254397 674254397      11427 c-1984618042-20081223-02                1

執行刪除RMAN到期備份
SQL> DECLARE
   devtype varchar2(256);
   BEGIN
   devtype:=dbms_backup_restore.deviceAllocate (type=>'',ident=>'t1');
   dbms_backup_restore.deleteBackupPiece(recid => 11301,stamp => 674167385,handle => 'c-1984618042-20081222-00',set_stamp => 674167385 ,set_count => 11411 ,pieceno => 1);
   dbms_backup_restore.deviceDeallocate;
   END;
   /
SQL> select 'dbms_backup_restore.deleteBackupPiece(recid =>' || recid || ',stamp =>' || stamp || ',handle =>''' || HANDLE || ''',set_stamp =>' || SET_STAMP || ',set_count =>' || SET_COUNT || ',pieceno =>' || PIECE# || ');' sqlt
     from v$backup_piece

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

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.