程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle exp備份導入注意的六個事項

Oracle exp備份導入注意的六個事項

編輯:Oracle數據庫基礎

凡事都不是完美的。不論哪種計算機語言,不論它的實際操作技巧是如何靈活,都是避免不掉它的缺陷之處,當然在Oracle exp備份導入時。我們也需要注意一些在實際操作中經常發生的事項。

Oracle exp備份導入注意事項

(1) 數據庫對象已經存在

一般情況, 導入數據前應該徹底刪除目標數據下的表, 序列, 函數/過程,觸發器等;數據庫對象已經存在, 按缺省的imp參數, 則會導入失敗如果用了參數ignore=y, 會把Oracleexp文件內的數據內容導入如果表有唯一關鍵字的約束條件, 不合條件將不被導入如果表沒有唯一關鍵字的約束條件, 將引起記錄重復。

(2) 數據庫對象有主外鍵約束

不符合主外鍵約束時, 數據會導入失敗解決辦法: 先導入主表, 再導入依存表disable目標導入對象的主外鍵約束, 導入數據後, 再enable它們

(3) 權限不夠

如果要把A用戶的數據導入B用戶下, A用戶需要有imp_full_database權限

(4) 導入大表( 大於80M ) 時, 存儲分配失敗

默認的EXP時, compress = Y, 也就是把所有的數據壓縮在一個數據塊上.導入時, 如果不存在連續一個大數據塊, 則會導入失敗.導出80M以上的大表時, 記得compress= N, 則不會引起這種錯誤.

(5) imp和exp使用的字符集不同

如果字符集不同, 導入會失敗, 可以改變unix環境變量或者NT注冊表裡NLS_LANG相關信息.導入完成後再改回來.

(6) imp和exp版本不能往上兼容

imp可以成功導入低版本exp生成的文件, 不能導入高版本Oracleexp生成的文件

使用方法:

例題格式及說明:

1.普通數據庫全部導出和導入

exp 用戶/密碼@dbName file=路徑.dmp full=y --還有其他的參數,看需要進行填寫

$ exp user/pwd file=/dir/xxx.dmp log=xxx.log full=y commit=y ignore=y --全部導出

$ imp user/pwd file=/dir/xxx.dmp log=xxx.log fromuser=dbuser touser=dbuser2 --全部導入

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved