oracle下邏輯的匯入匯出工具exp imp

2021-06-22 12:00:35 字數 2328 閱讀 8088

oracle下邏輯的匯入匯出工具exp/imp

exp/imp簡介:

exp/imp是oracle倖存的最古老的兩個命令列備份工具 ,在小型資料庫的轉儲、表空間的遷移、表的抽取、檢測邏輯和物理衝突中使用非常廣泛,我們可以把它作為小型資料庫的物理備份後的乙個邏輯備份。它可以跨平台、跨版本。

exp/imp的工作原理:

exp使用者程序通過伺服器程序連線到資料庫,開啟shadow程序,同時執行select語句查詢資料庫中的資料,通過buffer cache並通過sql語句處理層再轉移出exp匯出檔案,即exp程序需要占用伺服器上的sga和pga資源。

imp讀取exp匯出的.dmp檔案,構造ddl語句,插入建立表與其他物件以及新增資料的語句

exp的匯出資料的方式:

1、全庫匯出(這種方式一般不用)

2、按使用者匯出

3、按表匯出

exp常用引數簡介:exp help=y

使用exp/imp工具是,在服務端需開啟監聽,客戶端最好配置連線字串

客戶端的字符集必須與服務端的字符集相同,避免因不同字符集的轉換,導致匯出的資料不可用

客戶端版本必須與服務端版本一致,比如服務端是10g,客戶端是11g,則會報以下錯誤:

ok,開始匯出資料吧

環境:linux redhat 5.4  oracle 10g 32位

1、全庫匯出

2、按使用者匯出

3、按表匯出

4、在匯出是,只匯出表結構不匯出資料

exp工具的缺點:

速度慢,由於exp連線到資料庫需要先select要匯出的資料,再通過sga、pga傳輸給exp。

如果此連線斷開,則exp需從頭開始匯出,沒有斷點續傳的功能

消耗服務端資源,只能服務端業務的前提下使用

imp 常用引數:imp help=y

匯入資料,將匯出的資料匯入到windows平台的oracle 11g 64位中

使用11g客戶段匯入資料

1、按使用者匯入

報錯了,使用者不存在,好吧,在目標資料庫上建立lck使用者

再匯入又報錯了,對data表空間沒許可權,因為沒有給lck使用者分配在data表空間上的配額,其實現在表結構已經導進來了,看一下

好吧,那就再給lck的配額,再匯入      

啊,還是報錯,物件已存在,加引數ignore=y (忽略建立錯誤),再匯入

ok,匯入成功,  原來匯入資料不是一帆風順的啊。

總結:匯入資料前需要在目標資料庫中建立對應的使用者,並給使用者相應的許可權和該使用者在自己預設表空間上的配額

2、按表匯入

exp system/oracle@orcl  talbes=tab1  fromuser=lck,test  touser=lck,test file=d:\lck_test_tables.dmp  

ok,匯入成功!!

Oracle匯入匯出工具

oracle匯入匯出工具 exp和 imp介紹 1 exp 資料匯出工具 有三種主要的方式 完全 使用者 表 1 完全 將整個oracle資料庫中的所有物件 使用者等匯出。2 使用者模式 將指定使用者的所有物件和物件中的資料匯出。3 表模式 將指定使用者的指定資料表進行匯出。2 imp 資料匯入工具...

oracle11g匯入 匯出工具Data Pump

匯出 sql create directory dump dir as e ora11gbak sql grant read,write on directory dump dir to icdmain 接下來,我們將匯出資料 expdp icdmain icd directory dump dir...

Oracle ExpImp匯入匯出工具效能調優

1 exp調優 1.1 使用direct和recordlength選項 direct引數定義了匯出是使用直接路徑方式 direct y 還是常規路徑方式 direct n 常規路徑匯出使用sql select語句從表中抽取資料,直接路徑匯出則是將資料直接從磁碟讀到pga再原樣寫入匯出檔案,從而避免了...