Oracle
我可以使用 .dmp 文件同步現有數據庫嗎?
我有兩個 Oracle 數據庫(生產和實驗室)。當我創建實驗室數據庫時,我從生產中導入了一個 .dmp 文件來複製數據。現在數據庫已經執行了一段時間,數據不同步,我想再次導入。最簡單的方法是什麼?
我再次嘗試使用 imp 但它現在顯示錯誤,因為表已經存在。我想我可以刪除數據文件並重新導入。
編輯:這是我嘗試過的:
$ imp user/password file=MyExportFile.dmp following statement failed because the object already exists: CREATE TABLE ... ... Import terminated successfully with warnings.
如果您想替換所有內容,那麼最安全的方法是刪除所有模式並使用 imp 再次導入
drop user schema_name cascade
您也可以嘗試傳統導入實用程序中的ignore=y參數,當存在同名對象時將忽略錯誤,這在數據泵中稱為TABLE_EXISTS_ACTION。
imp user/password@servicename file=abc.dmp IGNORE=y
在數據泵方法的情況下,使用 table_exists_action 參數跳過現有對象,如下所示:
impdp sys/password@servicename dumpfile=abc.dmp logfile=imp_skip.log tables=abc table_exists_action=truncate