Oracle RMAN 維護介紹(二) 恢複目錄的維護

來源:互聯網
上載者:User

使用恢複目錄時會涉及到其他一些維護活動,比如在資料庫升級或遷移期間升級恢複目錄,手工設定資料庫對應物以及在某些資料庫操作後在同步恢複目錄。

1、在RMAN中取消註冊資料庫

在Oracle 10g 之前,從恢複目錄中取消註冊資料庫是一個手工操作的過程。在10g中,從恢複目錄中刪除資料庫只需要執行 unregister database。如:

RMAN>unregister database orcl;

注意的是: 該命令不會刪除該資料庫的備份檔案,而只是刪除這些備份檔案的恢複目錄引用。 同樣需要注意的是,只需要串連恢複目錄就可以執行該命令。

2、資料庫的遷移和升級問題

升級資料庫時,必須同事升級恢複目錄,因為資料庫版本, RMAN 版本和恢複目錄版本之間存在嚴格的格則。

用恢複目錄使用者串連資料庫,然後查詢rcver表,就可以看到恢複目錄的版本:

SQL> conn rman/rman@orcl;

已串連。

SQL> select version from rcver;

VERSION

------------

11.02.00.01

只要恢複目錄的版本不低於資料庫的版本,就能夠執行各種操作。 因此,如果在同一個恢複目錄中儲存多個資料庫,只要升級這個恢複目錄中的一個資料庫。

升級恢複目錄很簡單,只需要在RMAN 裡執行upgrade catalog命令即可。 RMAN 會提示使用者再次輸入upgrade catalog命令,隨後將升級恢複目錄。

C:/Users/Administrator.DavidDai>rman target /@bl catalog rman/rman@orcl;

復原管理員: Release 11.2.0.1.0 - Production on 星期日 7月 11 10:16:20 2010

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

串連到目標資料庫: BL (DBID=680066685)

串連到恢複目錄資料庫

RMAN> upgrade catalog;

恢複目錄所有者是RMAN

再輸入一次 UPGRADE CATALOG 命令來確認目錄升級

RMAN> upgrade catalog;

恢複目錄已升級到版本11.02.00.01

DBMS_RCVMAN 程式包升級為 11.02.00.01 版

DBMS_RCVCAT 程式包升級為 11.02.00.01 版

3、手工重設資料庫對應物(reset catalog)

在開啟資料庫時,如果使用resetlogs參數,就會建立一個新對應物。 如果這個操作是在RMAN 中進行,則會正確的更新恢複目錄,但是,如果手工執行resetlogs命令(比如:sqlplus),就必須在恢複目錄中重設資料庫對應物。

Rman>reset database to incarnation 5;

4、手工再同步恢複目錄(resync catalog)

RMAN使用恢複目錄時,它會使用在同步進程來確保恢複目錄和目標資料庫的控制檔案一致。通常,Oracle在RMAN操作(備份和恢複)後會再同步資料庫,這樣就不必經常再同步恢複目錄。需要再同步恢複目錄的一個執行個體是有時使用恢複目錄,有時不使用恢複目錄,此時,可以使用resync catalog命令手工使Oracle 再同步恢複目錄。

Rman>resync catalog;

Oracle 同步恢複目錄時,它首先會建立一個快照控制檔案,並比較這個檔案和恢複目錄。 完成比較後,Oracle更新恢複目錄,是恢複目錄與資料庫控制檔案同步。

5、恢複目錄記錄的刪除

只有很少的記錄會從恢複目錄中被刪除,如果不加以維護,狀態為deleted的就備份會一直駐留在恢複目錄中。為瞭解決這個問題,Oracle提供了$ORACLE_HOME/rdbms/admin/prgmanc.sql 指令碼來刪除恢複目錄中狀態為deleted的所有記錄。 建議定期執行這個指令碼,以控制檔案恢複目錄的大小。

如果要從恢複目錄中刪除舊的對應物記錄,就必須從DBINC表中刪除這些對應物。可以使用RC_DATABASE_INCARNATION 視圖來確定要刪除的對應物,記錄想刪除的每個對應物的DBINC_KEY值。然後在sqlplus中執行delete 命令,如:

SQL> select * from rc_database_incarnation;

DB_KEY       DBID  DBINC_KEY NAME     RESETLOGS_CHANGE# RESETLOGS_TIME CUR P

---------- ---------- ---------- -------- ----------------- -------------- --- -

2 1247395743          4 ORCL                940976 21-5月 -10     NO  0

2 1247395743         21 ORCL                     1 02-4月 -10     NO

2 1247395743        787 ORCL               8554968 06-7月 -10     YES 2

SQL> delete from dbinc where dbinc_key=4;

已刪除 1 行。

6、備份恢複目錄

我們可以使用RMAN來備份資料庫,同樣可以用RMAN 來備份恢複目錄資料庫。 只要確保設定了合理的恢複策略,就能夠很快的還原恢複目錄。

丟失恢複目錄並不可怕,即使使用了恢複目錄,在以後也可以不使用恢複目錄就能夠恢複資料庫。關鍵的是,我們需要資料庫控制檔案的備份。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.