資料幫浦使用 expdb和impdb

2021-10-08 14:54:42 字數 2215 閱讀 1768

expdb匯出資料庫使用者的資料,可以限制含(include), 或排除(exclude)某些表名,或按sql查詢表名, 使用時需要用配置檔案,如下:

--假設oracle使用者為wisg,需排除一些_his結尾的表.  %u為並行度的多個檔案編號

[oracle@redhat-inux1 ~]$ more expdb_cfg_wisg.par

directory=wisgdump

dumpfile=wisg_expdb20200727_%u.dmp

schemas=wisg

logfile=wisg_expdb20200727.log

parallel=5

exclude=table:"in(select table_name from user_tables where table_name like '%_his' )"

[oracle@edhat-inux1 ~]$ expdp wisg/password@wisgdb parfile=expdb_cfg_wisg.par

其中directory要提前用sql建立,用於存放匯入或匯出的dump檔案,例如這個目錄/dmp/expdp

sql> create or replace directory wisgdump as '/dmp/expdp';

sql> grant read,write on directory wisgdump to wisg;

匯出時引數content=metadata_only,指定匯出內容為只匯出表結構,不匯出資料。匯入impdp用同樣的include和content引數。

需要注意 : include ,exclude引數值在命令列中時,其中表名mytable_a和mytable_b必須大寫, 必須用\來轉義除逗號以外的符號;  如果寫在par檔案中則不需要轉義(例如上文)。

expdp wisg/password@wisgdb  schemas=wisg  include=table:\"in\(\'mytable\_a\', \'mytable\_b\'\)\"

匯入示例:  匯入到wisg2使用者( 該使用者對應的表空間為tbs2)

[oracle@redhat-inux2 ~]$ impdp wisg2/wisg2@orcl directory=wisgdump dumpfile=wisg_expdb20200727_%u.dmp logfile=wisg_expdb20200727_impdp.log parallel=5 remap_schema=wisg:wisg2 remap_tablespace=tbs1:tbs2

如果匯入時的使用者名稱相同,表空間名也相同,則簡單一些

[oracle@redhat-inux2 ~]$ impdp wisg/wisg@orcl directory=wisgdump dumpfile=wisg_expdb20200727_%u.dmp logfile=wisg_expdb20200727_impdp.log parallel=5 schemas=wisg

以下3條命令依次是:匯入dmp並排除4個表;匯入1個表結構;匯入3個表的p_cur分割槽(其餘分割槽也會建好,資料為空)

impdp wisg/wisg@orcl directory=wisgdump dumpfile=wisg_expdb20200727_%u.dmp logfile=wisg_expdb20200727_impdp.log parallel=5 schemas=wisg exclude=table:\"in\(\'tincome\'\,\'tconfirm\'\,\'tconfirmdetail\'\,\'tsharecurrents\'\,\'tdividenddetail\'\)\"

impdp wisg/wisg@orcl directory=wisgdump dumpfile=wisg_expdb20200727_%u.dmp logfile=wisg_expdb20200727_impdp.log parallel=5 schemas=wisg include=table:\"in\(\'tincome\'\)\"  content=metadata_only

impdp wisg/wisg@orcl directory=wisgdump dumpfile=wisg_expdb20200727_%u.dmp logfile=wisg_expdb20200727_impdp.log parallel=5  tables=tconfirm:p_cur,tconfirmdetail:p_cur,tsharecurrents:p_cur,tdividenddetail:p_cur

EXPDB和IMPDB使用詳解

expdb和impdb是日常維護經常會用到的命令,例如系統遷移和備份等。下面 1.建立邏輯目錄,該命令不會再作業系統建立真正的目錄,最好以system等管理員建立 create directory exppath as home oracle 檢視管理員目錄 select from dba dire...

expdb和impdb使用方法

一 關於expdp和impdp 使用expdp和impdp時應該注意的事項 exp和imp是客戶端工具程式,它們既可以在客戶端使用,也可以在服務端使用。expdp和impdp是服務端的工具程式,他們只能在oracle服務端使用,不能在客戶端使用。imp只適用於exp匯出的檔案,不適用於expdp匯出...

oracle 資料幫浦使用

1 建立directory create or replace directory ekltrustdirectory as home oracle eklxt restoredb 注意 1 要確保路徑在服務上存在 2 如果linux環境要有目錄要有讀寫許可權 2 匯出備份 export oracl...