oracle 資料泵 ORA-39112: Dependent object type COMMENT skipped

賀子_DBA時代發表於2015-08-22
今天要把測試庫的若干個schema用資料泵倒進生產資料庫中,本來非常簡單的幾個步驟,卻由於遇到了ORA-39112: Dependent object type COMMENT skipped這個錯誤,讓我頭疼半天。
仔細在網上查了查,導致這個問題的情況大致有一下幾個情況,
1,在原來測試庫中,目標schema和別的使用者相互授權了,可是你匯出的dmp中沒有包含所有的使用者,匯入時對應使用者沒有建立好。

2,再就是,表空間問題,測試庫中的使用者下的某個表的索引沒有在他的預設表空間裡,這樣你要在目標端(這裡就是生產環境),建立好對應的表空間,就是說如果你在測試庫把A使用者的下的某個表的許可權授給了B,那麼你在把A使用者用資料泵倒進生產庫時,他會在生產庫中檢測有沒有使用者B。也要做相同的操作。
解決辦法:
使用IMPDP工具完成資料匯入時,會按照dump檔案中有關的儲存的引數資訊完成資料的匯入。很多情況下我們希望按照被匯入使用者的預設引數完成資料的匯入,此時我們可以使用IMPDP的TRANSFORM引數輔助完成
利用引數  TRANSFORM=segment_attributes:n 去掉表空間和儲存子句,加上這個引數後,remap_tablesapce引數就會失效,就會倒進使用者預設的表空間,

[oracle@rac1 ~]$impdp system/"manager(*)"  directory=bak dumpfile=pdtest16.dmp remap_tablespace=pdTEST_EN:test_pd_data  remap_schema=pdtest_DE_DE:test_pd_DE_DE schemas=pdtest_DE_DE  TABLE_EXISTS_ACTION=replace TRANSFORM=segment_attributes:n;
就能成功

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29654823/viewspace-1779828/,如需轉載,請註明出處,否則將追究法律責任。

相關文章