Oracle——EXPDP加密和壓縮

lsxlong123發表於2016-08-26
Oracle——EXPDP加密和壓縮
2016-08-22 Liusx Liusx
背景介紹
    我們的需求是將生產的資料備份到Q環境中。頻率為1週一次。書寫這篇文章的目的也是為了提高資料同步的安全和效率,方便今後的查閱。    
    為了避免大篇幅的文字產生閱讀疲勞,我將通過前後一組資料對比開始,然後對所採用引數進行說明。
環境說明
    資料庫版本為Oracle 11.2.0.4
    OS 版本Oracle Linux 6.5
流程設計
     資料的備份採用了資料泵(EXPDP)工具,將備份傳輸到Q環境,在Q環境中使用資料泵(IMPDP)進行恢復,最後進行脫敏操作。
未壓縮操EXPDP備份需要近5小時,備份資料大小為150G左右。備份傳輸大約3小時。IMPDP恢復操作大約5個半小時
壓縮操作時間
    EXPDP備份需要近3:44(約4小時),備份資料大小為35G。備份傳輸大約38分鐘。IMPDP恢復操作大約7個半小時。當然,這裡增加了一個5000W的資料表。
加密操作
    這個case中我們只採用了密碼驗證備份的方法,確保了備份恢復時是需要備份密碼。
操作例項
--備份
    ${ORACLE_HOME}/bin/expdp \" / as sysdba \" directory=DIR dumpfile=backup.dmp  schemas=schemas1 \
    compression=all \ 
    reuse_dumpfiles=y \
    encryption=all encryption_algorithm=AES128 encryption_mode=PASSWORD encryption_password=Password \
    exclude=STATISTICS
說明:compression引數為壓縮選項,可設定的選項有:
ALL:包括資料和表結構
DATA_ONLY:只壓縮資料
METADATA_ONLY:只壓縮表結構
NONE:不壓縮
      encryption引數為加密選項,可設定的選項有:
ALL:包括資料和表結構
DATA_ONLY:只壓縮資料
METADATA_ONLY:只壓縮表結構
ENCRYPTED_COLUMNS_ONLY:只對列進行加密
NONE:不壓縮
      encryption_algorithm引數為密碼演算法,有效的值為:
        AES128, AES192 和 AES256
      encryption_mode引數為加密模式,有效的值為:
DUAL, PASSWORD 和 TRANSPARENT
      encryption_password引數為設定加密密碼
      --備份恢復
    ${ORACLE_HOME}/bin/impdp  \"/ as sysdba \" DIRECTORY=dir DUMPFILE=backup.dmp schemas=schemas1 TABLE_EXISTS_ACTION=REPLACE DATA_OPTIONS=SKIP_CONSTRAINT_ERRORS \
    encryption_password=Password   
      encryption_password引數為設定加密密碼,也匯出所設定密碼匹配。
總結
該case從空間上節約了3/4的磁碟空間,時間上節約了約2小時。在我們的環境中減少了對於生產的影響,同時保證了備份資料的安全性。
注:該文章將從技術的角度展開說明並應用到實際環境中。


--2016-08-26--

微信公眾號:Liusx

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

相關文章