oracle導入導出主要由兩種方式,一種是用命令方式(imp/exp 用戶名/密碼@oracle連接名稱 file=路徑名+文件名 full=y;其中full=y是說明全部導入或者導出,若只針對其中的幾個表可以通過table=(表名,表名….)實現);一種是通過PLSQL中Tool工具欄下面的import和export工具。
導入導出的格式分為三種,分別是Oracle Export,Sql Insert,pl/sql developer。
1、第一種是導出.dmp的文件格式,.dmp文件是二進制的,可以跨平台,還能包含權限,效率也很不錯,用得最廣。
2、第二種是導出.sql文件的,可用文本編輯器查看,通用性比較好,但效率不如第一種,適合小數據量導入導出。尤其注意的是表中不能有大字段(blob,clob),如果有,會提示不能導出。
3、第三種是導出.pde格式的,.pde為Pl/sql developer自有的文件格式,只能用Pl/sql developer自己導入導出;不能用編輯器查看。
通過PLSQL導出的數據,在表空間名稱不同的情況下,包含有Blog和Clog字段的表可能導入不成功(經過多次測試,大部分情況下是不成功的),錯誤提示如下:
在這種情況下,我們可以將這些無法導入的表的建表語句拷貝下來,在新環境中通過這些語句建立所需要的表,數據直接拷貝過來即可。尋找含有blog和clog字段類型的表的方法有兩種,一種是進行一遍導入,凡是無法導入的表應該是含有這些字段;一種是通過查詢語句進行查看包含這些字段的表(select table_name from user_tab_columns where data_type in ('CLOB','BLOB'))。
另外在數據無法導入導出的時候,注意一下以下幾點:
1、 用戶是否有DBA權限(一種通過enterprise manager console工具為用戶添加相應的權限;一種是通過命令的方式添加)
2、 導入導出的時候是否是選擇了All Object,如果選擇All Object情況下以普通用戶無法導出。普通導出選擇My Object。