Oracle
如何使用 Oracle Data Pump 獲得一致的導出?
我正在嘗試從模擬
CONSISTENT=Y
. 目前我正在以這種方式執行數據pumb:'/ AS SYSDBA' schemas=arrels dumpfile=arrels.dmp nologfile=y flashback_time='2009-06-03 12:00:02'
但是在導入時顯示關於不一致的錯誤:
ORA-02298: cannot enable name - parent keys not found
如果數據泵導出正在使用
flashback_time
,當然,約束在導出時間上得到驗證:
- 為什麼會這樣?
- 有什麼建議可以解決嗎?
我找到了問題的答案。我準確地輸入了目前時間戳:
flashback_time='2009-06-03 12:05:02'
如果我輸入一個更早的時間戳(例如 5 分鐘前),它就可以完美地工作……
您確定要導出的模式(“arrels”)沒有引用其他模式中的對象的引用約束嗎?如果 arrels 架構中的一個或多個外鍵引用引用其他架構中的表,那麼您也必須導出/導入它們。
編輯:文件似乎表明您需要用雙引號指定閃回時間,例如:
‘… flashback_time=’“2009-06-03 12:00:02”’
我遇到的另一個例子是使用 TO_TIMESTAMP 函式:
exp 系統/管理器文件=exp.dmp flashback_time="TO_TIMESTAMP(‘19-06-2004 13:24:26’, ‘DD-MM-YYYY HH24:MI:SS’)"
此外,您必須啟用自動撤消管理才能使用它。