很多情況下,本地空間不夠用,還想備份怎么辦,有人說在生產系統掛載一塊盤,其實大可不必,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 dual@ysdb1;
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得數據量還在跑著備份腳本,我只好寫點東西,不能浪費時間不是。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。