RMAN說,我能備份(13)--RMAN中的備份壓縮和加密

junsansi發表於2010-02-22

塗抹ORACLE試閱章節:第8章-Rman說,我能備份

===========================================================================

8.5.8 是否對備份集進行壓縮

  10g 版本的RMAN中的BACKUP命令新增了一個AS COMPRESSED BACKUPSET的選項。如果在執行BACKUP命令時指定了該選項,備份集在建立過程中就會應用壓縮演算法,通過這種方式使用倒是挺簡單的,也不需要其他額外的操作。例如:

    RMAN>  BACKUP AS COMPRESSED BACKUPSET TABLESPACE SYSTEM;

    Starting backup at 15-APR-09

    using channel ORA_DISK_1

    channel ORA_DISK_1: starting compressed full datafile backupset

    channel ORA_DISK_1: specifying datafile(s) in backupset

    input datafile fno=00001 name=F:\ORACLE\ORADATA\JSSBOOK\SYSTEM01.DBF

    channel ORA_DISK_1: starting piece 1 at 15-APR-09

    channel ORA_DISK_1: finished piece 1 at 15-APR-09

    piece handle=F:\ORACLE\BACKUP\BAK_11KCIHRB_1_1 tag=TAG20090415T214059 comment=NONE

    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:15

    channel ORA_DISK_1: starting compressed full datafile backupset

    channel ORA_DISK_1: specifying datafile(s) in backupset

    including current control file in backupset

    including current SPFILE in backupset

    channel ORA_DISK_1: starting piece 1 at 15-APR-09

    channel ORA_DISK_1: finished piece 1 at 15-APR-09

    piece handle=F:\ORACLE\BACKUP\BAK_12KCIHRQ_1_1 tag=TAG20090415T214059 comment=NONE

    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03

    Finished backup at 15-APR-09

  接著對相同表空間建立一個不壓縮的備份集:

    RMAN>  BACKUP TABLESPACE SYSTEM;

    Starting backup at 15-APR-09

    using channel ORA_DISK_1

    channel ORA_DISK_1: starting full datafile backupset

    channel ORA_DISK_1: specifying datafile(s) in backupset

    input datafile fno=00001 name=F:\ORACLE\ORADATA\JSSBOOK\SYSTEM01.DBF

    channel ORA_DISK_1: starting piece 1 at 15-APR-09

    channel ORA_DISK_1: finished piece 1 at 15-APR-09

    piece handle=F:\ORACLE\BACKUP\BAK_13KCIHS6_1_1 tag=TAG20090415T214126 comment=NONE

    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:15

    channel ORA_DISK_1: starting full datafile backupset

    channel ORA_DISK_1: specifying datafile(s) in backupset

    including current control file in backupset

    including current SPFILE in backupset

    channel ORA_DISK_1: starting piece 1 at 15-APR-09

    channel ORA_DISK_1: finished piece 1 at 15-APR-09

    piece handle=F:\ORACLE\BACKUP\BAK_14KCIHSM_1_1 tag=TAG20090415T214126 comment=NONE

    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02

    Finished backup at 15-APR-09

  列出兩個備份集,對比看看:

    RMAN>  LIST BACKUP OF TABLESPACE SYSTEM;

    List of Backup Sets

    ===================

    BS Key  Type LV Size       Device Type Elapsed Time Completion Time

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

    29   Full    27.60M      DISK        00:00:09     15-APR-09

            BP Key: 96   Status: AVAILABLE  Compressed: YES  Tag: TAG20090415T214059

            Piece Name: F:\ORACLE\BACKUP\BAK_11KCIHRB_1_1

      List of Datafiles in backup set 29

      File LV Type    Ckp SCN Ckp Time  Name

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

         1    Full     798005 15-APR-09 F:\ORACLE\ORADATA\JSSBOOK\SYSTEM01.DBF

    BS Key  Type LV Size       Device Type Elapsed Time Completion Time

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

    31  Full    129.20M     DISK        00:00:13     15-APR-09

            BP Key: 98   Status: AVAILABLE  Compressed: NO  Tag: TAG20090415T214126

            Piece Name: F:\ORACLE\BACKUP\BAK_13KCIHS6_1_1

      List of Datafiles in backup set 31

      File LV Type    Ckp SCN Ckp Time  Name

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

         1    Full     798020 15-APR-09 F:\ORACLE\ORADATA\JSSBOOK\SYSTEM01.DBF

  從LIST BACKUP中的資訊可以看出,壓縮比還是比較理想。不過壓縮備份集雖然能夠節省一些儲存空間,但肯定會降低備份和恢復時的速度,這中間如何取捨就取決於你的實際需求了。

    提示:

    這裡顯示建立不壓縮的備份集反而費時更長,這是因為我們測試庫較小,因此壓縮所花費的時間,相比壓縮後由於備份集縮小而節省出的寫磁碟時間更短,更多的時間都是花在I/O而不是壓縮備份集,因此不壓縮的備份集花費時間更長了。

8.5.9 是否啟用加密備份

  從10g R2版本開始,RMAN支援對備份集進行加密,括弧,俺說的是備份集喲,RMAN中建立的映象複製並不支援加密。

  對備份集進行加密主要是為了保護備份集的安全,啟用了加密措施後,建立的備份集在恢復時也必須要有相應的金鑰才能夠進行恢復。

  RMAN 提供三種加密的方式:透明模式、密碼模式和雙重模式。關於三種模式的特點的描述,請耐心等候,如果你很著急,想馬上知道,往後翻到本章最後一節。

  RMAN 提供了兩種方式設定加密備份:

  • CONFIGURE 命令。
  • SET ENCRYPTION 命令。

  兩種方式都能夠啟用或禁用備份加密,其中CONFIGURE命令相當於進行預定義配置,設定之後除非顯式修改,否則將持續有效。SET ENCRYPTION命令則是僅作用於當前會話,不過使用上更加靈活。SET ENCRYPTION優先順序比較高,如果通過CONFIGURE命令進行配置後,又執行SET ENCRYPTION命令,則SET ENCRYPTION命令指定的配置將會覆蓋CONFIGURE命令的配置。

  用CONFIGURE命令啟用備份加密的操作非常簡單(前提是資料庫端已經配置好了Oracle Encryption Wallet):

    RMAN> CONFIGURE ENCRYPTION FOR DATABASE ON;

    new RMAN configuration parameters:

    CONFIGURE ENCRYPTION FOR DATABASE ON;

    new RMAN configuration parameters are successfully stored

  然後再執行備份命令建立的備份集,就是加密備份集。

  如果要禁止的話將ON改為OFF即可:

    RMAN> CONFIGURE ENCRYPTION FOR DATABASE OFF;

    old RMAN configuration parameters:

    CONFIGURE ENCRYPTION FOR DATABASE ON;

    new RMAN configuration parameters:

    CONFIGURE ENCRYPTION FOR DATABASE OFF;

    new RMAN configuration parameters are successfully stored

  CONFIGURE 命令不僅可以指定DATABASE級,還可以具體到表空間,例如:

    RMAN> CONFIGURE ENCRYPTION FOR TABLESPACE USERS ON ;

    tablespace USERS will be encrypted in future backup sets

    new RMAN configuration parameters are successfully stored

  使用SET ENCRYPTION命令就靈活多了,隨時隨地都可以:

    RMAN> SET ENCRYPTION ON IDENTIFIED BY encbak ONLY;

    executing command: SET encryption

  上述命令設定了一個名為encbak的金鑰(這也正是傳說中的密碼模式),緊接其後建立的備份集在進行恢復時,就必須使用該金鑰才能夠進行正常的恢復操作。

=================================================

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7607759/viewspace-627456/,如需轉載,請註明出處,否則將追究法律責任。

相關文章