1. 程式人生 > >Oracle資料庫備份,exp和expdp的區別,imp和impdp的區別

Oracle資料庫備份,exp和expdp的區別,imp和impdp的區別

oracle資料庫備份

1: 建立dmp匯出目錄 

create directory 目錄名 as '目錄路徑'

2: 檢視當前建立的所有dmp匯出目錄

select * from dba_directories

3: 備份

expdp 使用者名稱/密碼@資料庫例項名 directory=匯出目錄 schemas=哪些使用者 dumpfile=匯出的檔名.dmp logfile=匯出的日誌名.log

——————————————————————————————————————————————————————

exp和expdp、imp和impdp

Oracle資料匯入匯出imp/exp就相當於oracle資料還原與備份。exp命令可以把資料從遠端資料庫伺服器匯出到本地的dmp檔案,imp命令可以把dmp檔案從本地匯入到遠處的資料庫伺服器中。 利用這個功能可以構建兩個相同的資料庫,一個用來測試,一個用來正式使用。

在10g之前,傳統的匯出和匯入分別使用EXP工具和IMP工具,從10g開始,不僅保留了原有的EXP和IMP工具,還提供了資料泵匯出匯入工具EXPDP和IMPDP.使用EXPDP和IMPDP時應該注意的事項:

1、EXP和IMP是客戶端工具程式,它們既可以在客戶端使用,也可以在服務端使用。

2、EXPDP和IMPDP是服務端的工具程式,他們只能在ORACLE服務端使用,不能在客戶端使用。

3、IMP只適用於EXP匯出檔案,不適用於EXPDP匯出檔案;IMPDP只適用於EXPDP匯出檔案,而不適用於EXP匯出檔案。

資料泵取只能在伺服器端執行,客戶端只能用來連線伺服器啟動匯入匯出操作

exp和expdp原理對比

1、exp/imp客戶端程式,受網路,磁碟的影響;  impdp/expdp伺服器端程式,只受磁碟的影響

2、假設檔案把檔案匯出在服務端,exp常規方式是使用SELECT的方式查詢資料庫中的資料,是需要通過buffer cache並通過sql的語句處理層再轉移至exp的匯出檔案(即要經過sga,pga才傳輸到客戶端,而exp直接路徑則是直接從磁碟上將資料轉移至exp的匯出檔案,所以速度更快;而expdp是exp的升級版,相當於exp + direct mode + parallel(可能對匯出檔案還進行了壓縮,這是從匯出檔案的對比結果發現的,具體不清楚)。所有從總的來說,expdp比exp提供了並行的方式(寫入多個匯出檔案)

impdp的並行機制也讓其比imp快很多