1. 程式人生 > >Oracle Rman 命令詳解(List report backup configure)

Oracle Rman 命令詳解(List report backup configure)

一、list常用命令總結備忘

    list
命令列出控制檔案、RMAN恢復目錄中備份資訊,是我們對所有可見的資料庫備份檔案的一個最直觀的瞭解的方法

    list incarnation;
    list backup summary;
    list backup of database summary;
    list backup of tablespace summary;
    list backup of datafile n,n summary;
    list archivelog all summary;

    list backup by file;
    list backup;
    list expired backup;
    list copy;

    list backup of spfile;
    list backup of controlfile;
    list backup datafile n,n,n;
    list backup tablespace tablespace_name;
    list backup of archivelog all;
    list backup of archivelog from scn ...;
    list backup of archivelog until scn ...;
    list backup of archivelog from sequence ..;
    list backup of archivelog until time 'sysdate-10';
    list backup of archivelog {all, from, high, like, logseq, low, scn, sequence, time, until};


1.List 當前RMAN所備份的資料庫:

RMAN> list incarnation;
彙總查詢:--如果備份檔案多的話多用這兩個list命令可以對備份檔案有個總體瞭解。


    1.1. list backup summary; --
概述可用的備份

        B
表示backup
        A
表示Archivelog F 表示full backup 0,1,2 表示incremental level備份

        A
表示可用AVALIABLE X 表示EXPIRED

       
這個命令可以派生出很多類似命令,例如

        list backup of database summary
        list backup of archivelog all summary
        list backup of tablespace users summary;
        list backup of datafile n,n,n summary

   

這些命令可以讓我們對已有的備份檔案有一個整體,直觀的瞭解。


    1.2.list backup by file;--
按照檔案型別分別列出分別為:資料檔案列表、歸檔日誌列表、控制檔案列表、SPFILE列表

    1.3.list backup;
   
這個命令列出已有備份集的詳細資訊。

    1.4.list expired backup;
   
列出過期的備份檔案

    1.5.list copy;
   
列出copy檔案
    list copy of database;
    list copy of controlfile;
    list copy of tablespace users;
    list copy of datafile n,n,n;
    list copy of archivelog all;
    list copy of archivelog from scn 10000;
    list copy of archivelog until sequence 12;


2. List
相關檔案的資訊
    list backup of {archivelog, controlfile, database, datafile, spfile, tablespace};
    list backup of database; --full,incremental,tablespace,datafile

2.1
伺服器引數檔案:
    list backup of spfile;


2.2
控制檔案:
    list backup of controlfile;


2.3
資料檔案:
    list backup of datafle n,n,n,n;


2.4
表空間:
    list backup of tablespace tablespace_name;--
表空間對應的backup

2.5
歸檔日誌:

    list backup of archivelog {all, from, high, like, logseq, low, scn, sequence, time, until};
    list backup of archivelog all;
    list backup of archivelog until time 'sysdate-1';
    list backup of archivelog from sequence 10;
    list backup of archivelog until sequence 10;
    list backup of archivelog from scn 10000;
    list backup of archivelog until scn 200000;

    list archivelog from scn 1000;
    list archivelog until scn 2000;
    list archivelog from sequence 10;
    list archivelog until sequence 12;



二、report常用命令總結備忘


report
用於判斷資料庫當前可恢復狀態、以及資料庫已有備份的資訊。最常使用的是report obsolete; report schema;

report {device, need, obsolete, schema, unrecoverable}

report schema;
report obsolete;
report unrecoverable;
report need backup;
report need backup days=3; --
報告最近3天內沒有備份的檔案

report need backup redundancy=3; --
報告冗餘次數小於3的資料檔案。
report need backup recovery window of 2 days;
    2.1.report schema;
   
報告資料庫模式


    22.report obsolete;
   
報告已丟棄的備份集(配置了保留策略)


    2.3.report unrecoverable;
   
報告當前資料庫中不可恢復的資料檔案(即沒有這個資料檔案的備份、或者該資料檔案的備份已經過期)


    2.4.report need backup;
   
報告需要備份的資料檔案(根據條件不同)
        report need backup days=3;
        --
最近三天沒有備份的資料檔案(如果出問題的話,這些資料檔案將需要最近3天的歸檔日誌才能恢復
)
        report need backup incremental=3;
        --
需要多少個增量備份檔案才能恢復的資料檔案。(如果出問題,這些資料檔案將需要3個增量備份才能恢復
)
        report need backup redundancy=3;
        --
報告出冗餘次數小於3的資料檔案

        --
例如資料檔案中包含2個數據檔案system01.dbfusers01.dbf.
        --
3次或都3次以上備份中都包含system01.dbf這個資料檔案,而users01.dbf則小於3

        --
那麼,報告出來的資料檔案就是users01.dbf
        --
即,報告出資料庫中冗餘次數小於 n 的資料檔案

        report need backup recovery window of 2 days;
        --
報告出恢復需要2天歸檔日誌的資料檔案三、backup常用命令總結備忘
    1.
設定備份標記
        backup database tag='full_bak1';
       
注:每個標記必須唯一,相同的標記可以用於多個備份只還原最新的備份。

    2.
設定備份集大小(一次備份的所有結果為一個備份集,要注意備份集大小)
        backup database maxsetsize=100m tag='datafile1';
       
注:maxsetsize限定備份集的大小。所以必須大於資料庫總資料檔案的大小,否則會報錯。
      RMAN-06183: datafile or datafile copy larger than MAXSETSIZE: file# 1 /data/oradata/system01.dbf

    3.
設定備份片大小(磁帶或檔案系統限制)
        run {
        allocate channel c1 type disk maxpicecsize 100m format '/data/backup/full_0_%U_%T';
        backup database tag='full_0';
        release channel c1;
        }
       
可以在allocate子句中設定每個備份片的大小,以達到磁帶或系統限制。也可以在configure中設定備份片大小。
        Configure channel device type disk maxpiecesize 100 m;
        configure channel device type disk clear;

    4.
備份集的儲存策略
        backup database keep forever;                  --
永久保留備份檔案
        backup database keep until time='sysdate+30'; --
儲存備份30


    5.
重寫configure exclude命令
        backup databas noexclude keep forever tag='test backup';

    6.
檢查資料庫錯誤
        backup validate database;
       
使用RMAN來掃描資料庫的物理/邏輯錯誤,並不執行實際備份。

    7.
跳過離線,不可存取或只讀檔案
        backup database skip readonly;
        backup database skip offline;
        backup database skip inaccessible;
        backup database ship readonly skip offline ship inaccessible;

    8.
強制備份
        backup database force;

    9.
基於上次備份時間備份資料檔案
        1>
只備份新增的新資料檔案
            backup database not backed up;
        2>
備份"在限定時間週期內"沒有被備份的資料檔案
            backup database not backed up since time='sysdate-2';

    10.
備份操作期間檢查邏輯錯誤
        backup check logical database;
        backup validate check logical database;

    11.
生成備份副本
        backup database copies=2;

    12.
備份控制檔案
        backup database device type disk includ current controlfile;



四、configure常用命令總結備忘

4.1 顯示當前的配置資訊

1.1 RMAN> show all;

RMAN 配置引數為:

CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

CONFIGURE BACKUP OPTIMIZATION OFF; # default

CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default

CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default

CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default

CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default

CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default

CONFIGURE MAXSETSIZE TO UNLIMITED; # default

CONFIGURE ENCRYPTION FOR DATABASE OFF; # default

CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default

CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default

CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:/ORACLE/PRODUCT/10.2.0/DB_1/DATABASE/S

NCFDBA.ORA'; # default


1.2
查詢RMAN設定中非預設值:
    SQL>
selectname,valuefrom v$rman_configuration;

4.2. 常用的configure選項

4.2.1
儲存策略 (retention policy)
   configure retention policy to recovery window of 7 days;
   configure retention policy to redundancy 5;
   configure retention policy clear;

CONFIGURE RETENTION POLICY TO NONE;第一種recover window是保持所有足夠的備份,可以將資料庫系統恢復到最近七天內的任意時刻。任何超過最近七天的資料庫備份將被標記為obsolete第二種redundancy 是為了保持可以恢復的最新的5份資料庫備份,任何超過最新5份的備份都將被標記為redundancy。它的預設值是1份。

第三四:NONE 可以把使備份保持策略失效,Clear 將恢復預設的保持策略一般最安全的方法是採用第二種保持策略。



4.2.2
備份優化 backup optimization
   configure backup optimization on;
   configure backup optimization off;
   configure backup optimization clear;
預設值為關閉,如果開啟,rman將對備份的資料檔案及歸檔等檔案進行一種優化的演算法。

4.2.3
預設裝置 default device type
   configure default device type to disk;
   configure default device type to stb;
   configure default device type clear;
是指定所有I/O操作的裝置型別是硬碟或者磁帶,預設值是硬碟磁帶的設定CONFIGURE DEFAULT DEVICE TYPE TO SBT;


4.3.4
控制檔案 controlfile
   configure controlfile autobackup on;
   configure controlfile autobackup format for device type disk to '/cfs01/backup/conf/conf_%F';
   configure controlfile autobackup clear;
   configrue controlfile autobackup format for device type disk clear;
   configrue snapshot controlfile name to '/cfs01/backup/snapcf/scontrofile.snp';

--是配置控制檔案的快照檔案的存放路徑和檔名,這個快照檔案是在備份期間產生的,用於控制檔案的讀一致性。
   configrue snapshot controlfile name clear;

強制資料庫在備份檔案或者執行改變資料庫結構的命令之後將控制檔案自動備份,預設值為關閉。這樣可以避免控制檔案和catalog丟失後,控制檔案仍然可以恢復。


4.3.5
並行數(通道數) device type disk|stb pallelism n;
   configure device type disk|stb parallelism 2;
   configure device type disk|stb clear; --
用於清除上面的通道配置
   configure channel device type disk format 'e/:rmanback_%U';
   configure channel device type disk maxpiecesize 100m
   configure channel device type disk rate 1200K
    configure channel 1 device type disk format 'e/:rmanback_%U';
    configure channel 2 device type disk format 'e/:rmanback_%U';
    configure channel 1 device type disk maxpiecesize 100m

配置資料庫裝置型別的並行度。


4.3.6
生成備份副本 datafile|archivelog backup copies
   configure datafile backup copies for device type disk|stb to 3;
   configure archivelog backup copies for device type disk|stb to 3;

--是設定資料庫的歸檔日誌的存放裝置型別
   configure datafile|archivelog backup copies for device type disk|stb clear
   BACKUP DEVICE TYPE DISK DATABASE
    FORMAT '/disk1/backup/%U', '/disk2/backup/%U', '/disk3/backup/%U';

是配置資料庫的每次備份的copy數量,oracle的每一次備份都可以有多份完全相同的拷貝。


4.3.7
排除選項 exclude
   configure exclude for tablespace 'users';
   configrue exclude clear;

此命令用於將指定的表空間不備份到備份集中,此命令對只讀表空間是非常有用的。


4.3.8
備份集大小 maxsetsize
   configure maxsetsize to 1G|1000M|1000000K|unlimited;
   configure maxsetsize clear;

4.3.9
其它選項 auxiliary
   CONFIGURE AUXNAME FOR DATAFILE 1 TO '/oracle/auxfiles/aux_1.f';
   CONFIGURE AUXNAME FOR DATAFILE 2 TO '/oracle/auxfiles/aux_2.f';
   CONFIGURE AUXNAME FOR DATAFILE 3 TO '/oracle/auxfiles/aux_3.f';
   CONFIGURE AUXNAME FOR DATAFILE 4 TO '/oracle/auxfiles/aux_4.f';
   -
   CONFIGURE AUXNAME FOR DATAFILE 1 CLEAR;
   CONFIGURE AUXNAME FOR DATAFILE 2 CLEAR;
   CONFIGURE AUXNAME FOR DATAFILE 3 CLEAR;
   CONFIGURE AUXNAME FOR DATAFILE 4 CLEAR;

Rmanformat格式中的%
%c
備份片的拷貝數
%d
資料庫名稱
%D
位於該月中的第幾天 (DD)
%M
位於該年中的第幾月 (MM)
%F
一個基於DBID唯一的名稱,這個格式的形式為c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII為該資料庫的DBIDYYYYMMDD日期,QQ是一個1-256的序列
%n
資料庫名稱,向右填補到最大八個字元
%u
一個八個字元的名稱代表備份集與建立時間
%p
該備份集中的備份片號,從1開始到建立的檔案數
%U
一個唯一的檔名,代表%u_%p_%c
%s
備份集的號
%t
備份集時間戳
%T
年月日格式(YYYYMMDD)