oracle數據泵導入導出

一  關於expdp和impdp     使用EXPDP和IMPDP時應該注意的事項:
EXP和IMP是客戶端工具程序,它們既可以在客戶端使用,也可以在服務端使用。
EXPDP和IMPDP是服務端的工具程序,他們只能在ORACLE服務端使用,不能在客戶端使用。
IMP只適用於EXP導出的文件,不適用於EXPDP導出文件;IMPDP只適用於EXPDP導出的文件,而不適用於EXP導出文件。
expdp或impdp命令時,可暫不指出用戶名/密碼@實例名 as 身份,然後根據提示再輸入,如:
expdp schemas=scott dumpfile=expdp.dmp DIRECTORY=dpdata1;
一、創建邏輯目錄,該命令不會在操作系統創建真正的目錄,最好以system等管理員創建。
create directory dpdata1 as 'd:\test\dump';
二、查看管理理員目錄(同時查看操作系統是否存在,因爲Oracle並不關心該目錄是否存在,如果不存在,則出錯)
select * from dba_directories;
三、給scott用戶賦予在指定目錄的操作權限,最好以system等管理員賦予。
grant read,write on directory dpdata1 to scott;
四、導出數據
1)按用戶導
expdp scott/tiger@orcl schemas=scott dumpfile=expdp.dmp DIRECTORY=dpdata1;
2)並行進程parallel
expdp scott/tiger@orcl directory=dpdata1 dumpfile=scott3.dmp parallel=40 job_name=scott3
3)按表名導
expdp scott/tiger@orcl TABLES=emp,dept dumpfile=expdp.dmp DIRECTORY=dpdata1;
4)按查詢條件導
expdp scott/tiger@orcl directory=dpdata1 dumpfile=expdp.dmp Tables=emp query='WHERE deptno=20';
5)按表空間導
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=temp,example;
6)導整個數據庫
expdp system/manager DIRECTORY=dpdata1 DUMPFILE=full.dmp FULL=y;
五、還原數據
1)導到指定用戶下
impdp scott/tiger DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=scott;
2)改變表的owner
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp TABLES=scott.dept REMAP_SCHEMA=scott:system;
3)導入表空間
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=tablespace.dmp TABLESPACES=example;
4)導入數據庫
impdb system/manager DIRECTORY=dump_dir DUMPFILE=full.dmp FULL=y;
5)追加數據
impdp system/manager DIRECTORY=dpdata1 DUMPFILE=expdp.dmp SCHEMAS=system TABLE_EXISTS_ACTION

二  附加說明      並行操作(PARALLEL)
您可以通過 PARALLEL 參數爲導出使用一個以上的線程來顯著地加速作業。每個線程創建一個單獨的轉儲文件,因此參數 dumpfile 應當擁有和並行度一樣多的項目。您可以指定通配符作爲文件名,而不是顯式地輸入各個文件名,例如:
expdp ananda/abc123 tables=CASES directory=DPDATA1 dumpfile=expCASES_%U.dmp parallel=4 job_name=Cases_Export
注意:dumpfile 參數擁有一個通配符 %U,它指示文件將按需要創建,格式將爲expCASES_nn.dmp,其中nn 從 01 開始,然後按需要向上增加。
在並行模式下,狀態屏幕將顯示四個工作進程。(在默認模式下,只有一個進程是可見的)所有的工作進程同步取出數據,並在狀態屏幕上顯示它們的進度。
分離訪問數據文件和轉儲目錄文件系統的輸入/輸出通道是很重要的。否則,與維護 Data Pump 作業相關的開銷可能超過並行線程的效益,並因此而降低性能。並行方式只有在表的數量多於並行值並且表很大時纔是有效的。
數據庫監控
您還可以從數據庫視圖獲得關於運行的 Data Pump 作業的更多信息。監控作業的主視圖是 DBA_DATAPUMP_JOBS,它將告訴您在作業上有多少個工作進程(列 DEGREE)在工作。
另一個重要的視圖是 DBA_DATAPUMP_SESSIONS,當它與上述視圖和 V$SESSION 結合時將給出主前臺進程的會話 SID。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章