2014-04-04 24 views
0

我有以下命令將轉儲文件導入具有不同架構的另一個數據庫(DB_B)。 Oracle的數據泵導入從DB_A使用默認架構將轉儲文件導入另一個數據庫

impdp SYSTEM/PASSWORD DUMPFILE=dpump_dir1:expfull.dmp FULL=y LOGFILE=dpump_dir2:full_imp.log 

expfull.dmp包含不同的角色,用戶,表空間和其他的很多,而DB_B僅僅是一個基本的數據庫,我想導入我expfull.dmp它只包含默認的用戶,在創建數據庫期間角色等。我爲獲得DB_A的精確匹配而執行的常見步驟是每次導入數據庫時​​創建這些用戶和tablesspaces中的每一個。是否有一個命令/標誌,它會自動將expfull.dmp的所有內容導入到DB_B,而無需執行我剛剛描述的所有常用步驟?我檢查谷歌和oracle網站有remap_schema將以某種方式做到這一點。但我不確定它是如何工作的,或者它是做我想做的。任何意見/幫助非常感謝提前感謝。

+0

可以嘗試小鬼用戶名/密碼@ hoststring文件= filename.dmp登錄= filename.log全= Y,用戶名和密碼是你的新用戶在你的數據庫中,你想傳輸你的數據 –

+0

嗨ersin,我不認爲imp會在我的轉儲上工作,因爲我使用expdp導出它。 – dimas

+0

你可以嘗試使用exp命令導出 –

回答

0

我不認爲有一種方法可以像imp/exp中那樣自動執行,使用全=導入所有內容的full = y,因此您必須通過指定希望的位置將表空間重新映射到另一個表空間去。他們不必像像即:

impdp scott/tiger DIRECTORY=DBEXPDIR DUMPFILE=DBEXPDIR:export.dpdmp LOGFILE=DBEXPLOG:daily_import.dplog CONTENT=ALL TABLE_EXISTS_ACTION=TRUNCATE REMAP_SCHEMA=PRODDB:PROD_COPY REMAP_TABLESPACE=INDEX:INDEX_DEV REMAP_TABLESPACE=DATA:DATA_DEV REMAP_TABLESPACE=DATA2:DATA_DEV REMAP_TABLESPACE=DATA3:DATA_DEV 
相關問題