1. 程式人生 > >expdp+dblink 實現遠程備份,特別實用

expdp+dblink 實現遠程備份,特別實用

expdp+dblink 實現遠程備份


很多情況下,本地空間不夠用,還想備份怎麽辦,有人說在生產系統掛載一塊盤,其實大可不必,expdp+dblink幫你搞定!


一、測試環境描述

服務器端:Oracle 11g rac

客戶端:Oracle 11g 單實例


二、操作步驟

1. 客戶端配置

$ cd $ORACLE_HOME/network/admin

$ vi tnsnames.ora

ysdb1 =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.31)(PORT = 1521))

)

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = ysdb)

)

)

2. 客戶端創建dblink(sys用戶創建)

CREATE PUBLIC DATABASE LINK "ysdb1"

CONNECT TO system

IDENTIFIED BY "oracle"

USING ‘ysdb1‘;

3. 客戶端驗證

SQL> select * from [email protected];

D

-

X

4. 創建目錄

$sudo mkdir /backup

$sudo chown -R oracle:oinstall /backup

set lines 120

col owner for a15

col directory_name for a30

col DIRECTORY_PATH for a60

select * from dba_directories;

create directory dump_dir as ‘/backup‘;

grant read,write on directory dump_dir to system;

5. 備份

vi expdp.sh

nohup expdp system/oracle directory=dump_dir dumpfile=roidba_%U.dmp logfile=roidba_expdp.log network_link=‘ysdb1‘ schemas=roidba

parallel=4 cluster=n COMPRESSION=all reuse_dumpfiles=y encryption=data_only encryption_password=roidba_passwd filesize=30G &

sh expdp.sh


小結:Oracle 數據庫的數據泵備份還是相當的好用,參數比較多,但是每個參數都值得我們去仔細的去測試,對於數據庫備份加密,從安全的角度來說,我們應該這麽做,但是實際環境下,大家確很少用。生產環境700多G得數據量還在跑著備份腳本,我只好寫點東西,不能浪費時間不是。

本文出自 “roidba” 博客,請務必保留此出處http://roidba.blog.51cto.com/12318731/1952471

expdp+dblink 實現遠程備份,特別實用