我要投稿
  • 您當前的位置:中國教育資源網 -> 技術教程 -> 數據庫教程 -> ORACLE教程 -> 教程內容
  • [ 收藏本頁教程 ]
  • Oracle RMAN快速入門指南ORACLE教程

    教程作者:佚名    教程來源:不詳   教程欄目:ORACLE教程    收藏本頁
    1.什么是RMAN?

      RMAN可以用來備份和還原數據庫文件、歸檔日志和控制文件。它也可以用來執行完全或不完全的數據庫恢復。

      注意:RMAN不能用于備份初始化參數文件和口令文件。

      RMAN啟動數據庫上的Oracle服務器進程來進行備份或還原。備份、還原、恢復是由這些進程驅動的。

      RMAN可以由OEM的Backup Manager GUI來控制,但在本文章里不作重點討論。

      2. Terminology 專業詞匯解釋

      2.1. Backup sets 備份集合

      備份集合有下面的特性:

       包括一個或多個數據文件或歸檔日志

       以oracle專有的格式保存

       有一個完全的所有的備份片集合構成

       構成一個完全備份或增量備份

      2.2. Backup pieces 備份片

      一個備份集由若干個備份片組成。每個備份片是一個單獨的輸出文件。一個備份片的大小是有限制的;如果沒有大小的限制, 備份集就只由一個備份片構成。備份片的大小不能大于使用的文件系統所支持的文件長度的最大值。

      2.3. Image copies 鏡像備份

      鏡像備份是獨立文件(數據文件、歸檔日志、控制文件)的備份。它很類似操作系統級的文件備份。它不是備份集或 備份片,也沒有被壓縮。

      2.4. Full backup sets 全備份集合

      全備份是一個或多個數據文件中使用過的數據塊的的備份。沒有使用過的數據塊是不被備份的,也就是說,oracle 進行備份集合的壓縮。

      2.5. Incremental backup sets 增量備份集合

      增量備份是指備份一個或多個數據文件的自從上一次同一級別的或更低級別的備份以來被修改過的數據塊。 與完全備份相同,增量備份也進行壓縮。

      2.6. File multiplexing

      不同的多個數據文件的數據塊可以混合備份在一個備份集中。

      2.7. Recovery catalog resyncing 恢復目錄同步

      使用恢復管理器執行backup、copy、restore或者switch命令時,恢復目錄自動進行更新,但是有關日志與歸檔日志信息沒有自動記入恢復目錄。需要進行目錄同步。使用resync catalog命令進行同步。

    RMAN>resync catalog;

    RMAN-03022:正在編譯命令:resync
    RMAN-03023:正在執行命令:resync
    RMAN-08002:正在啟動全部恢復目錄的 resync
    RMAN-08004:完成全部 resync

    [1] [2] [3] [4] [5] 下一頁  

      3. 恢復目錄

      3.1.恢復目錄的概念

      恢復目錄是由RMAN使用、維護的用來放置備份信息的倉庫。RMAN利用恢復目錄記載的信息去判斷如何執行需要的備份恢復操作。

      恢復目錄可以存在于ORACLE數據庫的計劃中。

      雖然恢復目錄可以用來備份多個數據庫,建議為恢復目錄數據庫創建一個單獨的數據庫。

      恢復目錄數據庫不能使用恢復目錄備份自身。

      3.2.建立恢復目錄

      第一步,在目錄數據庫中創建恢復目錄所用表空間:

    SQL> create tablespace rman_ts datafile 'd:\oracle\oradata\rman\rman_ts.dbf' size 20M;

      表空間已創建。

      第二步,在目錄數據庫中創建RMAN 用戶并授權:

    SQL> create user rman identified by rman default tablespace rman_ts temporary tablespace temp quota unlimited on rman_ts;

      用戶已創建。

    SQL> grant recovery_catalog_owner to rman ;

      授權成功。
    SQL> grant connect, resource to rman ;

      授權成功。

      第三步,在目錄數據庫中創建恢復目錄

    C:\>rman catalog rman/rman

      恢復管理器:版本8.1.6.0.0 - Production

    RMAN-06008:連接到恢復目錄數據庫
    RMAN-06428:未安裝恢復目錄
    RMAN>create catalog tablespace rman_ts;
    RMAN-06431:恢復目錄已創建

      注意:雖然使用RMAN不一定必需恢復目錄,但是推薦使用。因為恢復目錄記載的信息大部分可以通過控制文件來記載,RMAN在恢復數據庫時使用這些信息。不使用恢復目錄將會對備份恢復操作有限制。

      3.3.使用恢復目錄的優勢

       可以存儲腳本;

       記載較長時間的備份恢復操作;

      4. 啟動RMAN

      RMAN為交互式命令行處理界面,也可以從企業管理器中運行。

      為了使用下面的實例,先檢查環境符合:

       the target database is called "his" and has the same TNS alias

       user rman has been granted "recovery_catalog_owner "privileges

       目標數據庫的連接用戶為internal帳號,或者以其他SYSDBA類型帳號連接  

       the recovery catalog database is called "rman" and has the same TNS alias

       the schema containing the recovery catalog is "rman" (same password)

      在使用RMAN前,設置NLS_DATE_FORMAT 和NLS_LANG環境變量,很多RMAN LIST命令的輸出結果是與日期時間相關的,這點在用戶希望執行以時間為基準的恢復工作也很重要。

      下例是環境變量的示范:

    NLS_LANG= SIMPLIFIED CHINESE_CHINA.ZHS16GBK
    NLS_DATE_FORMAT=DD-MON-YYYY HH24:MI:SS

      為了保證RMAN使用時能連接恢復目錄,恢復目錄數據庫必須打開,目標數據庫至少要STARTED(unmount),否則RMAN會返回一個錯誤,目標數據庫必須置于歸檔模式下。

      4.1.使用不帶恢復目錄的RMAN

      設置目標數據庫的 ORACLE_SID ,執行:

    % rman nocatalog
    RMAN> connect target
    RMAN> connect target internal/<password>@his

      4.2.使用帶恢復目錄的RMAN

    % rman rman_ts rman/rman@rman
    RMAN> connect target
    % rman rman_ts rman/rman@rman target internal/<password>@his

      4.3.使用RMAN

      一旦連接到目標數據庫,可以通過交互界面或者事先存儲的腳本執行指定RMAN命令, 下面是一個使用RMAN交互界面的實例:

    RMAN> resync catalog;
    RMAN-03022:正在編譯命令:resync
    RMAN-03023:正在執行命令:resync
    RMAN-08002:正在啟動全部恢復目錄的 resync
    RMAN-08004:完成全部 resync

      使用腳本的實例:

    RMAN> execute script alloc_1_disk;

      創建或者替代存儲的腳本:

    RMAN> replace script alloc_1_disk {
    2> allocate channel d1 type disk;
    3> }

      5.注冊或者注銷目標數據庫

      5.1.注冊目標數據庫

      數據庫狀態:

        恢復目錄狀態:打開

        目標數據庫:加載或者打開

      目標數據庫在第一次使用RMAN之前必須在恢復目錄中注冊:

      第一步,啟動恢復管理器,并且連接目標數據庫:

    C:\>rman target internal/oracle@his catalog rman/rman@rman

      恢復管理器:版本8.1.6.0.0 - Production

    RMAN-06005:連接到目標數據庫:HIS (DBID=3021445076)
    RMAN-06008:連接到恢復目錄數據庫

      第二步,注冊數據庫:

    RMAN> register database;
    RMAN-03022:正在編譯命令:register
    RMAN-03023:正在執行命令:register
    RMAN-08006:注冊在恢復目錄中的數據庫
    RMAN-03023:正在執行命令:full resync
    RMAN-08002:正在啟動全部恢復目錄的resync
    RMAN-08004:完成全部resync
     
      5.2.注銷目標數據庫

      RMAN提供了一個注銷工具,叫DBMS_RCVCAT工具包,請注意一旦注銷了該目標數據庫,就不可以使用恢復目錄中含有的備份集來恢復數據庫了。

      為了能注銷數據庫,需要獲得數據庫的標識碼(DB_ID)和數據庫鍵值(DB_KEY)。其中連接目標數據庫時將會獲得DB_ID。

    C:\>rman target internal/oracle@his catalog rman/rman@rman

      恢復管理器:版本8.1.6.0.0 - Production

    RMAN-06005:連接到目標數據庫:HIS (DBID=3021445076)
    RMAN-06008:連接到恢復目錄數據庫

      其中DBID=3021445076,利用DBID=3021445076查詢數據庫鍵值碼:

       連接到目標數據庫,查詢db表:

    SQL> select * from db;

    DB_KEY DB_ID CURR_DBINC_KEY
    ---------- ---------- --------------
    1 3021445076 2

      獲得DB_KEY=1,這樣,該目標數據庫DB_KEY=1,DBID=3021445076,利用兩個值使用DBMS_RCVCAT工具包就可以注銷數據庫:

    SQL> execute dbms_rcvcat.unregisterdatabase(1,3021445076);
    PL/SQL 過程已成功完成。

      至此,注銷數據庫操作完成。

    上一頁  [1] [2] [3] [4] [5] 下一頁  

      6.操作已有的備份

      6.1.加入目錄數據庫

      數據庫狀態:

       恢復目錄:打開

       目標數據庫:加載或者打開

      如果存在8.x版本以前創建的備份數據想注冊到目標數據庫,可以采用如下手工方式加入到恢復目錄中,
    RMAN> catalog datafilecopy '/oracle/ .... /system01.dbf';

      使用如下命令顯示恢復目錄中包含的文件

    RMAN> list copy of database;

      6.2.從目錄數據庫中刪除

      第一步:查看備份信息:

    RMAN>list back

    我要投稿   -   廣告合作   -   關于本站   -   友情連接   -   網站地圖   -   聯系我們   -   版權聲明   -   設為首頁   -   加入收藏   -   網站留言
    Copyright © 2009 - 20012 www.mmogirl.net All Rights Reserved.中國教育資源網 版權所有  
     
    潘甜甜七夕果冻传媒在线_月夜影视在线观看免费完整_国产成人18黄网站视频_亚洲无?码国产精品