RMAN catalog 的建立和使用

--==========================css

-- RMAN catalog 的建立和使用sql

--==========================數據庫

 

1、建立恢復目錄session

    建立恢復目錄通常分爲三大步驟oracle

        建立存放恢復目錄的數據庫(或使用已存在的數據庫)app

        建立恢復目錄的的全部者ide

        建立恢復目錄spa

   

    建立數據庫能夠參考:Oralce 10g 使用DBCA.net

 

    在存儲恢復目錄的數據庫建立表空間用於存儲恢復目錄schema及恢復目錄數據(本文使用已經建立好的數據庫catadb來存儲恢復目錄)日誌

 

        SQL> create tablespace tbs_rman datafile '/u01/app/oracle/oradata/catadb/tbs_rman01.dbf'--建立rman恢復目錄表空間

          2  size 200m autoextend on;  

         

        SQL> create user rman identified by rman     --建立rman schema

        2  temporary tablespace temp

        3  default tablespace tbs_rman

        4  quota unlimited on tbs_rman;

 

        SQL> grant recovery_catalog_owner to rman;   --角色授予

 

        SQL> conn rman/rman

       

        SQL> select * from session_privs;

 

        PRIVILEGE

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

        CREATE SESSION

        ALTER SESSION

        CREATE TABLE

        CREATE CLUSTER

        CREATE SYNONYM

        CREATE VIEW

        CREATE SEQUENCE

        CREATE DATABASE LINK

        CREATE PROCEDURE

        CREATE TRIGGER

        CREATE TYPE

        SQL> select * from session_roles;

 

        ROLE

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

        RECOVERY_CATALOG_OWNER 

 

        RMAN> connect catalog rman/rman@catadb    --鏈接到恢復目錄

 

        connected to recovery catalog database

 

        RMAN> create catalog tablespace tbs_rman;   --建立恢復目錄

 

        recovery catalog created

 

        [oracle@oradb ~]$ rman target sys/redhat@orcl catalog rman/rman@catadb   --鏈接到目標數據庫及恢復目錄

 

        connected to target database: ORCL (DBID=1260850162)

        connected to recovery catalog database

 

        RMAN> register database;          --將目標數據庫註冊到恢復目錄

 

        database registered in recovery catalog

        starting full resync of recovery catalog

        full resync complete

 

2、基於恢復目錄的備份     

 

    1.查看相關信息

        RMAN> list incarnation;

 

        List of Database Incarnations

        DB Key  Inc Key DB Name  DB ID            STATUS  Reset SCN  Reset Time

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

        1       8       ORCL     1260850162       PARENT  1          30-JUN-05

        1       2       ORCL     1260850162       CURRENT 446075     22-OCT-10

 

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

 

        RMAN> crosscheck copy;         --校驗copy

        RMAN> delete expired copy;     --刪除過時的copy

 

    2.全備

        RMAN> run{

        2> allocate channel ch1 device type disk;

        3>  backup as compressed backupset

        4> database plus archivelog delete input

        5> format='/u01/app/oracle/bk/rmbk/Whole_%d_%U'

        6>  tag='Whole_bak';

        7> release channel ch1;}

 

    3.增量備份()

        RMAN> run{

        2> allocate channel ch1 device type disk;

        3> allocate channel ch2 device type disk;

        4> backup as compressed backupset

        5> incremental level 0

        6> database plus archivelog delete input

        7> format='/u01/app/oracle/bk/rmbk/Inc_0_%d_%U'

        8> tag='Inc_0';

        9> release channel ch1;

        10> release channel ch2;}  

 

        RMAN> list backup summary;

 

    4.增量備份(1)

        RMAN> run{                                 

        2> allocate channel ch1 device type disk;

        3> allocate channel ch2 device type disk;

        4> backup as compressed backupset

        5> incremental level 1 database

        6> format='/u01/app/oracle/bk/rmbk/Inc_1_%d_%U'

        7> tag='Inc_1';

        8> release channel ch1;

        9> release channel ch2;}

 

        RMAN> list backup by file;

 

    5.累計增量備份(1)

        RMAN> run{

        2> allocate channel ch1 device type disk;

        3> backup as compressed backupset

        4> incremental level 1 cumulative database

        5> format '/u01/app/oracle/bk/rmbk/Cum_1_%d_%U'

        6> tag='Cum_1';

        7> release channel ch1;}

 

    6.備份表空間

        RMAN> run{

        2> allocate channel ch1 device type disk;

        3> backup as compressed backupset

        4> tablespace users,example

        5> format='/u01/app/oracle/bk/rmbk/tbs_%d_%U'

        6> tag='tbs';

 

        RMAN> list backupset tag=tbs;

 

    7.備份數據文件

        RMAN> run{

        2> allocate channel ch1 device type disk;

        3> backup as compressed backupset

        4> datafile 3

        5> format='/u01/app/oracle/bk/rmbk/df_%d_%U'

        6> tag='df';

        7> release channel ch1;}

 

    8.備份歸檔日誌

        備份歸檔日誌前,建議先使用crosscheck校驗一下

        crosscheck一般用於檢查備份是否被刪除,若是刪除將會打上刪除標籤

        RMAN> crosscheck archivelog all;

 

        allocated channel: ORA_DISK_1

        channel ORA_DISK_1: sid=148 devtype=DISK

        validation succeeded for archived log

        archive log filename=/u01/app/oracle/oradata/orcl/arch/log_1_117_733069427.arc recid=111 stamp=733171369

        Crosschecked 1 objects

 

        RMAN> sql 'alter system switch logfile';

 

        sql statement: alter system switch logfile

 

        RMAN> sql 'alter system switch logfile';

 

        sql statement: alter system switch logfile

 

        RMAN> list archivelog all;

 

        List of Archived Log Copies

        Key     Thrd Seq     S Low Time  Name

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

        465     1    117     A 22-OCT-10 /u01/app/oracle/oradata/orcl/arch/log_1_117_733069427.arc

        553     1    118     A 23-OCT-10 /u01/app/oracle/oradata/orcl/arch/log_1_118_733069427.arc

        569     1    119     A 23-OCT-10 /u01/app/oracle/oradata/orcl/arch/log_1_119_733069427.arc

                                                                                                               

    9.基於SCN來備份歸檔日誌

        RMAN> run{

        2> allocate channel ch1 device type disk;

        3> backup as compressed backupset

        4> archivelog from scn 848043

        5> format='/u01/app/oracle/bk/rmbk/arc_%d_%U'

        6> tag='arc';

        7> release channel ch1;

        8> }

 

    10.鏡像備份

        RMAN> run{

        2> allocate channel ch1 device type disk;

        3> backup as copy datafile 1,4

        4> format '/u01/app/oracle/bk/rmbk/df_%d_%U'

        5> tag 'copybak';

        6> release channel ch1;}

   

    11.其它

        RMAN> crosscheck backupset;

 

        RMAN> change backupset 1

 

        RMAN> validate backupset

 

        RMAN> validate backupset 635;

   

    12.基於catalog的數據庫恢復請參考:基於catalog RMAN 備份與恢復

   

3、更多參考

有關基於用戶管理的備份和備份恢復的概念請參考:

        Oracle 冷備份

        Oracle 熱備份

        Oracle 備份恢復概念

        Oracle 實例恢復

        Oracle 基於用戶管理恢復的處理(詳細描述了介質恢復及其處理)

       

    有關RMAN的恢復與管理請參考:

        RMAN 概述及其體系結構

        RMAN 配置、監控與管理

        RMAN 備份詳解

        RMAN 還原與恢復

       

    有關Oracle體系結構請參考:

        Oracle 實例和Oracle數據庫(Oracle體系結構)

        Oracle 表空間與數據文件

        Oracle 密碼文件

        Oracle 參數文件

Oracle 數據庫實例啓動關閉過程

        Oracle 聯機重作日誌文件(ONLINE LOG FILE)

        Oracle 控制文件(CONTROLFILE)

        Oracle 歸檔日誌

 


原文連接: http://blog.csdn.net/robinson_0612/article/details/6043649
相關文章
相關標籤/搜索