PLSQL導入dmp文件完整步驟(附圖)


導入dmp文件分為三大步:創建表空間、創建用戶、導入dmp文件

一、創建表空間:

點擊new,新建一個sql window

 語句為:

create tablespace "表空間名" datafile 'D:\app\*****\oradata\orcl\表空間名.dbf' size 50M default storage (initial 500K Next 500K minextents 1 maxextents unlimited pctincrease 0);

如:

create tablespace CDP datafile 'D:\app\LBD\virtual\oradata\orcl\CDP.dbf' size 2000M;

其中,CDP代表表空間名字,datafile后面的目錄地址代表本地ORACLE的安裝目錄,為方便查看我這里將表空間的文件名設置為表空間的名字。

運行之后我們就能看到自己的表空間啦

這一步的常見報錯有:

ora-01119錯誤  原因:該錯誤的主要問題是在於創建表空間的文件目錄地址沒有指定正確。

ORACLE-01537錯誤  原因:表空間'CDP'或者文件名'CDP.dbf'已經被使用。

 

二、創建用戶

 

使用數據庫 dba 用戶創建用戶並賦予相應的導入導出等權限。

 

1.選擇new--user

 

 

 2.點選General標簽。選擇第一步創建的表空間,並填寫用戶名密碼

 

 

 

 

 3.點選Role Privileges標簽。Role選擇connect,勾選“Default”

 

 

 

 

 4.點選System Privileges標簽。選擇“create any table”“create any type”“create any sequence”,右側不勾選。

 

 

 

 

 5.點選Quotas標簽。tablespace中選擇“users”表空間,勾選“Unlimited”(無限權限)。

 

 

 6.點擊APPLY。退出plsql重新登陸。到這里,我們就可以使用剛剛創建的用戶以普通用戶(Normal)的身份登錄了

 

 

 

三、導入dmp文件

 

導入dmp文件有兩種方式:1使用plsql導入;2用命令行導入。

 

*應盡量避免使用plsql進行導入,因為會出現很多會產生各種靈異問題。比如:1)導入的時候一閃而過,顯示導入成功,但數據庫里找不到任何數據。2)選擇From UserTo User時顯示“Not logged on”問題。

 

1plsql導入簡介(避免使用)

 

第一步:使用創建的用戶登錄

 

第三步:選擇tools(工具)菜單下的import tables..(導入表);
第四步:在oracle import選項卡界面勾選相應的選項;
第五步:選擇buffer size(緩沖池大小);
第六步:填寫from user導出dmp文件的用戶;
第七步:填寫to user導入dmp文件的用戶,即當前登錄的用戶;
第八步:import executable選擇默認;
第九步:選擇dmp文件;
第十步:import(導入)。

 

2Windows自帶的命令行導入:

 

導入前注意:

 

1、導入前同樣需要創建表空間。

 

2、設置表空間的自動增長(否則導入數據大於表空間的存儲量會導入失敗)。

 

 

 

設置表空間:

 

ALTER DATABASE DATAFILE ' F:\app\root\oradata\orcl\HF_PMC_NEW.dbf ' AUTOEXTEND ON;//打開自動增長 

 

ALTER DATABASE DATAFILE ' F:\app\root\oradata\orcl\HF_PMC_NEW.dbf ' AUTOEXTEND ON NEXT 200M ;//每次自動增長200m

 

ALTER DATABASE DATAFILE ' F:\app\root\oradata\orcl\HF_PMC_NEW.dbf ' AUTOEXTEND ON NEXT 200M MAXSIZE 1024M;//每次自動增長200m,數據表最大不超過1G

 

 

 

給用戶賦予dba權限:

 

1, plsql上用有dba權限的賬號登錄;

 

2, 運行GRANT DBA TO MYCDP;

 

 

 

導入dmp命令行:

*注意要用windows自帶的命令行導入(win+r

1

imp system/123@127.0.0.1:1521/orcl file=C:\pmc20190722.dmp log=D:\test.log fromuser=root touser=system constraints=N ignore=y

2

imp MYCDP/MYCDP@ORCL file=D:\umecmycim20200425.dmp full=y;

這一步的常見報錯有:

IMP-00013: 只有 DBA 才能導入由其他 DBA 導出的文件。  原因:沒有給創建的用戶賦權限 ,要用超級管理員賬號登陸, 運行GRANT DBA TO MYCDP;賦予dba權限之后才可以導入。

IMP-00002: 無法打開 C:\****.dmp進行讀取 。   原因:檢查sql語句最后是不是少了分號“;”,或者沒有加: full=y,這些都會引起無法讀取。

IMP-00034:警告:在導出文件中未找到FromUser"root "

注意: 導出時的賬號是什么,導進去的賬號是什么。注意設置,最好一致!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM