exp命令(export):把數據從遠程數據庫導出到本地,生成一個dmp文件,常用命令如下所示:
--把數據庫QuicklyTest完全導出,用戶名為qtuser,密碼qtuser,導出到D:/QuicklyTest.dmp中(關鍵字:full) exp qtuser/qtuser@QuicklyTest file=D:/QuicklyTest.dmp full=y --把數據庫QuicklyTest中的SYS與SYSTEM用戶完全導出(關鍵字:owner) exp qtuser/qtuser@QuicklyTestfile=file=D:/QuicklyTest.dmp owner=(system,sys) --把數據庫中的表 sample_report,quickly_report 導出(關鍵字:tables) exp qtuser/qtuser@QuicklyTestfile=file=D:/QuicklyTest.dmp tables=(sample_report,quickly_report)
imp命令(import):把本地的dmp文件,導入到遠程數據庫中
他山之石:
imp工具的版本必須和目標庫的版本相同。比如,使用版本為9.2.0.7的imp工具導入到版本為9.2.0.8的數據庫中,會遇到錯誤。
exp工具的版本必須與源庫或者目標庫中版本較低的相同。比如,從低版本的源庫exp導出數據,imp導入到高本版目標庫,那么exp的版本必須要和源庫相同。
同理,從高版本的源庫exp導出數據,imp導入到低版本目標庫,那么exp的版本必須和目標庫相同。
自我總結:
1、exp命令是使用本地的客戶端版本,在實際工作中應用低版本的exp進行源頭庫數據導出。
2、imp命令進行數據導入的時候,要使用與目標庫版本一致版本的imp命令。
場景模擬:
本地電腦Oracle版本為12.2.0.1.0,堡壘機終端數據庫版本為11.2.0.4.0,遠程數據庫版本為11.2.0.1.0,需要把遠程數據庫的數據導入到堡壘機終端數據庫里面。
判斷三個庫中,最低版本為遠程數據庫版本,為11.2.0.1.0,所以我們使用的exp版本,也應該是11.2.0.1.0
因為是導入到堡壘機數據庫中,這個數據庫的版本為11.2.0.4.0,所以我們使用的imp版本,則為11.2.0.4.0