Oracle數據泵的導入和導出

 

前言

今天王子要分享的內容是關於Oracle的一個實戰內容,Oracle的數據泵。

網上有很多關於此的內容,但很多都是複製粘貼別人的,導致很多小夥伴想要使用的時候不能直接上手,所以這篇文章一定能讓你更清晰的理解數據泵。

開始之前王子先介紹一下自己的環境,這裏使用的是比較常用的WIN10系統,Oracle數據庫也是安裝在本機上的,環境比較簡單。

 

數據泵的導入

導入的數據文件可能是別人導出給你的,也可能是你自己導出的,王子這裏就是別人導出的,文件名字是YD.DMP。

在進行操作之前,一定要問清楚表空間名字,如果表空間命名不統一,可能會導致導入失敗的問題。

所以第一步就是建立表空間,語句如下:

create tablespace VIEWHIGH
datafile 'D:/app/admin/oradata/orcl/VIEWHIGH' 
size 1M autoextend on next 50M maxsize unlimited;

這裏的datafile路徑一般選擇你本地oracle的數據文件路徑。

之後,我們可以建立一個新的用戶來導入數據用,這個用戶名也可以提前問好,最好用戶名一致,否則需要做一次用戶名的映射,這個我們下文再說。

建立用戶語句如下:

create user DRGS_INIT
  identified by "vhiadsh"
  default tablespace VIEWHIGH 
  profile DEFAULT
  ACCOUNT UNLOCK;

建立用戶後需要給用戶授權,語句如下:

--給新建用戶授DBA權限
grant dba to DRGS_INIT;
grant unlimited tablespace to DRGS_INIT;

接下來我們需要在本地的磁盤中創建一個文件夾,作爲數據泵文件夾來使用,同時把DMP文件放入到此文件夾下。

之後使用如下語句創建數據泵:

create directory data_dir as '/usr/oracle' ;-- 注意:windows 路徑爲反斜槓:c:\oracle

這裏的data_dir是我們自定義的名字,導入的時候與它一致即可。

之後就是導入操作了,注意,導入的命令不屬於sql哦,打開本地的CMD命令行,輸入如下語句即可:

impdp drgs_init/vhiadsh@192.168.1.188/orcl directory=data_dir dumpfile=YD.DMP REMAP_SCHEMA=viewhigh:drgs_init
EXCLUDE=USER logfile=expdp.log

接下來對這條語句做一下解釋。

前邊就是正常的用戶名/密碼和oracle數據庫地址,directory指定的就是我們自定義的data_dir,dumpfile就是DMP文件名,REMAP_SCHEMA=原用戶:現用戶,也就是我們前文說到的用戶映射,如果用戶名一致,則不需要映射,EXCLUDE=USER指的是排除掉用戶,因爲我們已經自己創建好了用戶,所以就把用戶排除掉,logfile指定的是日誌文件名,執行語句後日志文件會在我們的data_dir路徑下。

 

到這裏數據泵的導入就結束了。

 

數據泵的導出

相比於導入,導出的工作就很簡單了。

同導入操作一樣,我們也需要創建一個目錄,並通過以下語句創建數據泵:

create directory dump_dir as 'e:\dump'; 

之後我們直接執行導出命令就可以了,命令如下:

expdp cospace/123456@orclWG directory=dump_dir file=COSPACE.dmp schemas=cospace logfile=expdp.log

schemas指的是要導出的用戶名,dumpfile指的是要導出的DMP文件名,directory指定剛剛自定義的dump_dir,logfile指定日誌文件名,執行語句後會在dump_dir路徑下。

 

到這裏,數據泵的導出也結束了。

 

總結

今天王子向大家分享了Oracle數據泵的導入導出的實戰過程,內容還是比較簡單的,相信小夥伴們可以很容易的上手實踐。

如果實踐中遇到什麼問題可以留言,與王子一起討論。

 

往期文章推薦:

JVM專欄

消息中間件專欄

併發編程專欄

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章