Oracle expdp/impdp常用樣本整理

來源:互聯網
上載者:User

標籤:oracle   資料泵   

expdp不依賴和參考NLS_LANG的設定,而是完全按照資料庫本身的字元集進行轉換, 平時資料量不大時一直採用exp/imp導資料庫,到了資料量大的時候expdp/impdp就看到效果了,一次exp匯出28G的DMP檔案用了3個小時,採用EXPDP用了20分鐘。

1. 建立測試資料

SQL> create tablespace DATA datafile ‘/u01/app/oracle/oradata/orcl/DATA.dbf‘ size 10m autoextend on next 10m;  
SQL> create user abc identified by abc default tablespace DATA;    
SQL> grant connect,resource to abc;    
SQL> conn abc/abc    
SQL> create table t as select * from all_objects;    
SQL> select * from tab;    
TNAME                          TABTYPE  CLUSTERID    
------------------------------ ------- ----------    
T                              TABLE    
SQL>

2. 配置directory目錄與使用者存取權限

SQL> conn / as sysdba;  
SQL> create directory dump_dir as ‘/home/oracle‘;    
SQL> col owner format a5    
SQL> col directory_name format a25;    
SQL> col directory_path format a50;    
SQL> select * from dba_directories;

OWNER DIRECTORY_NAME            DIRECTORY_PATH  
----- ------------------------- --------------------------------------------------    
SYS   DUMP_DIR                  /home/oracle    
SQL>    
SQL> grant read,write on directory dump_dir to public;    
SQL>

3. 匯出匯入全庫(1) 全庫匯出

$ expdp \‘/ as sysdba\‘ directory=dump_dir full=y dumpfile=fulldb.dmp parallel=2;

(2) 全庫匯入

$ impdp \‘/ as sysdba\‘ directory=dump_dir full=y dumpfile=fulldb.dmp parallel=2 table_exists_action=replace;

4. 匯出匯入使用者(1) 同使用者匯入匯出

$ expdp abc/abc directory=dump_dir dumpfile=abc.dmp

匯入樣本如下:需要建立abc使用者

$ impdp abc/abc directory=dump_dir dumpfile=abc.dmp

(2) 不同使用者匯入匯出,abc使用者下資料匯入到tom使用者下

$ expdp abc/abc directory=dump_dir dumpfile=abc.dmp logfile=data.log

匯入樣本如下:如果不事先建立tom使用者的話,IMPDP會自動建立tom使用者,需要用有許可權的帳號,本例是採用系統管理員許可權。

$ impdp \‘/ as sysdba\‘ directory=dump_dir dumpfile=abc.dmp remap_schema=abc:tom

先建立tom使用者的匯入方式

$ impdp tom/tom directory=dump_dir dumpfile=abc.dmp remap_schema=abc:tom

(3) 同時匯出兩個使用者的所有表,分別匯入,也可以一起匯入。

expdp \‘/ as sysdba\‘ directory=dump_dir dumpfile=db_abc_tom.dmp schemas=abc,tom

(4) 匯出表

expdp abc/abc directory=dump_dir dumpfile=abc_tables.dmp TABLES=emp,dept

(5) 並行匯出,可以加入速度

expdp abc/abc directory=dump_dir dumpfile=full.dmp parallel=40

5. 跨版本匯入問題

低版本是不能匯入高版本dmp,需要在高版本的EXPDP匯出時指定版本號碼匯出。低版本IMPDP無需指定版本。

例如:11.2.0.4匯入到10.2.0.5

expdp abc/abc directory=dump_dir dumpfile=abc_tables.dmp version=10.2.0.5.0

本文出自 “koumm的linux技術部落格” 部落格,請務必保留此出處http://koumm.blog.51cto.com/703525/1574472

Oracle expdp/impdp常用樣本整理

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.