oracle導入導出工具exp/imp

jopen 10年前發布 | 24K 次閱讀 Oracle 數據庫服務器

一、exp/imp簡介

exp/imp是oracle幸存的最古老的兩個命令行備份工具 ,在小型數據庫的轉儲、表空間的遷移、表的抽取、檢測邏輯和物理沖突中使用非常廣泛,我們可以把它作為小型數據庫的物理備份后的一個邏輯備份。它可以跨平臺、跨版本。


二、exp/imp工作原理:

        exp用戶進程通過服務器進程連接到數據庫,開啟shadow進程,同時執行select語句查詢數據庫中的數據,通過buffer cache并通過SQL語句處理層再轉移出exp導出文件,即exp進程需要占用服務器上的SGA和PGA資源。

        imp讀取exp導出的.dmp文件,構造DDL語句,插入創建表與其他對象以及添加數據的語句。 


三、exp導出數據

        exp 導出數據的方式

  • 全庫導出
  • 按用戶導出
  • 按表導出
  • </ul>

    1、查看exp 參數
    [oracle@honey lost+found]$  exp help=y

    f3.jpg

    2、全庫導出

    [oracle@honey lost+found]$  expsystem/systempassword@orcl  full=y  file=/home/lost+found/full.dmp

    3、按用戶導出

    [oracle@honey lost+found]$  expsystem/systempassword@orcl  owner=olap  file=/home/lost+found/olap.dmp

    4、按表導出

    [oracle@honey lost+found]$  expsystem/systempassword@orcl   tables=olap.D_TF_DATA_M4,olap.TB_TEST_1  file=/home/lost+found/olap_table_schem.dmp

    5、只導出表結構不導出數據

    [oracle@honey lost+found]$  exp system/systempassword@orcl   owner=olap  rows=n  file=/home/lost+found/olap_tables_nodata.dmp

    6、exp工具的缺點

    •         速度慢,由于exp連接到數據庫需要先select要導出的數據,再通過SGA、PGA傳輸給exp。
    •         如果此連接斷開,則exp需從頭開始導出,沒有斷點續傳的功能。
    •         消耗服務端資源,只能服務端業務的前提下使用。
    四、imp導入數據
    1、查看imp參數
    [oracle@honey lost+found]$  imp help=y
    f4.jpg
    2、按用戶導入
    [oracle@honey lost+found]$  imp system/systempassword@orcl001   fromuser=olap  touser=user001  ignore=y  file=/home/lost+found/olap.dmp
    注意:要確認touser=user001 這個oracle用戶user001是否存在。
    簡言之就是:導入數據前需要在目標數據庫中創建對應的用戶,并給用戶相應的權限和用戶在自己默認表空間上的配額。
    3、按表導入:
    [oracle@honey lost+found]$  imp system/systempassword@orcl001  tables=tab1  fromuser=olap,user001  touser=user001,user001  ignore=y  file=/home/lost+found/olap1.dmp
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!