1. 程式人生 > >使用exp命令實現Oracle資料備份(資料匯出)

使用exp命令實現Oracle資料備份(資料匯出)

在平時的工作中,我們難免會遇到要備份資料,當然,用pl/sql可以實現通過匯出資料來備份資料,但有時我們需要定製一些指令碼來實現資料備份時,就不得不用到exp命令。
用exp來進行資料備份時可以有三種備份模式,分別是完全模式,使用者模式和表模式。完全模式是用來備份整個資料庫的,使用者模式是用來備份資料庫中某個使用者下的資料,表模式是用來備份某個表的資訊。下面我將詳細解說用法。

先貼出exp命令常用的一些引數說明及其預設值,如下圖所示:


1.完全模式下匯出資料使用如下命令:

exp systemUser/[email protected] buffer=buffer-size file=C:\full.dmp full=y
引數說明:systemUser就是系統管理員使用者,一般為system,passWord是系統管理員的密碼,SID為要匯出的資料庫
的服務名。buffer-size為設定的緩衝區的大小,file是匯出檔案的儲存路徑,注意儲存格式,full=y表示完全匯出,
具體參考exp命令引數說明。


2.使用者模式下匯出資料使用如下命令:

exp systemUser/[email protected] buffer=buffer-size file=C:\myuser.dmp owner=myuser
引數說明:systemUser就是系統管理員使用者,一般為system,passWord是系統管理員的密碼,SID為要匯出的資料庫
的服務名。buffer-size為設定的緩衝區的大小,file是匯出檔案的儲存路徑,注意儲存格式。owner用於指定哪些
使用者的資料需要被匯出,可以為多個使用者,其設定為owner=(user1,user2,...)。


當然匯出某個特定使用者myuser下的資料也可以這樣寫命令:
exp myuser/
[email protected]
buffer=buffer-size file=C\myuser.dmp
引數說明:myuser為指定的使用者,password為該使用者的密碼,SID為指定的資料庫

3.表模式下匯出資料用如下命令:

exp myuser/[email protected] buffer file:C:\table.dmp tables=(table1)
引數說明:myuser為該表所屬的使用者,password為使用者密碼,SID為該表所在的資料庫,
tables用來指定要匯出的表,可以是多個表,命令為tables=(table1,table
2,...)