Oracle邏輯匯入資料(IMPIMPDP)
Oracle邏輯匯入資料(IMP/IMPDP)
Oracle邏輯導人資料是邏輯匯出資料的逆過程,導人資料可以使用與EXP對應的IMP工具,也可以使用與EMPDP對應的IMPDP工具。本文將分別講述如何使用IMP和IMPDP工具完成資料的匯入工作,Oracle邏輯匯入資料經常用來進行備份的恢復和用來做資料遷移,把要遷移的資料進行EXP/EXPDP匯出後,再匯入到另外一個數據庫上。
使用IMP匯入資料
IMP導人資料是將資料庫中之前使用EXP匯出的資料匯入到資料庫當中。IMP匯入的方式也是在DOS命令視窗下完成的,根據不同的DMP檔案可以進行不同方式的匯入,具體如下:
匯入表語法:
imp student/123456@orcl file=d:/student。dmp log=student。log
fromuser=student touser=teacher TABLES=(stuinfo) buffer=819200
語法解析:
1、使用 imp 匯入之前匯出student。dmp檔案中的學生資訊表(stuinfo)。
2、tables指定要匯入的表結構,在匯入之前要確定dmp檔案當中是否含有該表資料。
3、fromuser指定dmp檔案中是從student使用者匯入到目標資料庫的teacher使用者。在imp匯入之前要確定teacher使用者下是否已經存在該表,不然會報錯。
4、我們選擇匯入表資料時,會把表相關的索引和觸發器一起匯入進來。
結果如下:
匯入使用者語法:
imp student/123456@orcl file=d:/student。dmp log=student。log
fromuser=student touser=teacher buffer=819200
語法解析:
1、只需要透過fromuser指定要匯出的使用者,透過touser指定要匯入的使用者,就會把該使用者中所有的資料物件和資料全部匯入。
匯入一個完整資料庫:
imp student/123456@orcl file=d:/student。dmp log=student。log
full=y ignore=y buffer=819200
語法解析:
1、透過full=Y指定了要匯出的是完整資料庫,但是前提DMP資料檔案中是匯出的全庫資料。全庫匯入一般是用來做資料備份以備恢復使用,或者用來搭建測試環境時使用。
IMPDP匯入資料
使用IMPDP匯入資料的前提是資料是使用EMPDP匯出的,同樣也是在DOS視窗下直接輸入IMPDP和登入資料庫的使用者名稱,即可導人資料。
impdp導到指定使用者下:
impdp student/123456@orcl DIRECTORY=dir DUMPFILE=student。dmp logfile=student_imp。log SCHEMAS=student
語法解析:
1、directory指定的是目錄物件,這裡的目錄物件就是在使用expdp匯出時建立的目錄物件。
2、dumpfile指定的是要匯入的dmp檔案,
3、SCHEMAS指定要匯入的資料是匯入到哪個使用者下。
impdp匯入表空間:
impdp student/123456@orcl DIRECTORY=dir DUMPFILE=student_tablespace。dmp logfile=student_imp。log TABLESPACES=student
語法解析:
1、tablespaces指定要匯入的是表空間下的所有物件和資料,這裡匯入的表空間為student表空間。
impdp匯入資料庫:
impdp student/123456@orcl DIRECTORY=dir DUMPFILE=student_full。dmp logfile=student_imp。log full=y
語法解析:
1、full=Y指定要匯入的是資料檔案中全庫資料,包括各種資料庫物件。這裡前提是dmp檔案是全庫匯出的資料檔案。
impdp匯入追加資料:
impdp student/123456@orcl DIRECTORY=dir DUMPFILE=student。dmp SCHEMAS=student TABLE_EXISTS_ACTION=append
語法解析:
1、利用 table_exists_action=append指定要匯入的dmp檔案中,當存在表已經在庫裡存在的情況下,會直接對錶資料進行追加,而不會報錯。