oracle使用impdp方式匯入資料
阿新 • • 發佈:2019-01-29
原文:http://blog.csdn.net/bao19901210/article/details/9666901
匯入格式(按使用者方式匯入,Oracle在本機)
impdp 使用者名稱/密碼 schemas=要匯入的使用者(即是使用expdp匯出的使用者) directory=建立的資料夾名稱(directory_name) dumpfile=test.dmp(要放入到directory_path路徑下) logfile=imp.log(可以不寫)
- --匯入時必須先建立資料夾路徑
- createorreplace directory bao as'd:\oracle\test';
-
--給使用的使用者授權(讀寫許可權)
- Grantread,write on directory bao to scott;
- --檢視目錄及許可權
- SELECT privilege, directory_name, DIRECTORY_PATH FROM user_tab_privs t, all_directories d
- WHERE t.table_name(+) = d.directory_name ORDERBY 2, 1;
建立完資料夾後,在win7下是沒有建立的資料夾的,需要手動建立資料夾,並且把使用expdp匯出的dmp檔案放入該資料夾下(開始自己匯入時,建立完資料夾後始終在磁碟上找不到)
期間報過好多錯,像org-29283,org-06512,ora-29283,ora-39002,org-39070等等,反正很鬱悶的~!
建立好資料夾後,進行匯入:(我使用的是通過執行command命令進入命令列介面匯入)
impdp scott/tiger schemas=certification directory=test dumpfile=test.dmp
這要匯入後會報錯,提示表空間XXX不存在,使用者certification不存在
根據錯誤資訊,建立好表空間,和使用者,並設定使用者的表空間
- CREATE TABLESPACE TEACHER
- LOGGING
- DATAFILE 'D:\ORACLE\ORADATA\ORCL\TEACHER.DBF'
- SIZE 1024M
-
AUTOEXTEND ON
- NEXT 32M MAXSIZE 2048M
- EXTENT MANAGEMENT LOCAL;
- dropuser certification;
- createuser certification identified by cert
- DEFAULT TABLESPACE TEACHER;
- grantconnect,resource to certification;
- grantcreate session,dba to certification;
然後繼續匯入,成功,over!