資料泵(expdp/impdp)跨版本匯入,11g匯出10g匯入
最近在做資料庫升級的事情,開發那邊提了個需求說,如果升級並執行幾天後怎麼把新的資料倒回到舊版本的資料庫裡面?
我做升級時是使用資料泵做的資料遷移,大家都知道軟體的使用“一般”情況下都是向下相容的,即例如使用10g的expdp工具匯出的檔案使用11g的impdp匯入到11g的資料庫裡面“幾乎”不會出現什麼問題,但是如果反過來則可能需要做一些處理,其實也就是在expdp匯出時需要使用version引數。於是我把我測試記錄如下:
1、先來看看不使用version引數時的情況
從11.2.0.3的資料庫中匯出:
[[email protected] dumpdir]$ expdp srcb/srcb directory=dumpdir dumpfile=srcb.without.version.dmp tables=stock_quotes,stock_info Export: Release 11.2.0.3.0 - Production on Mon Nov 26 13:47:52 2012 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production With the Partitioning, Automatic Storage Management, Oracle Label Security, OLAP, Data Mining, Oracle Database Vault and Real Application Testing options Starting "SRCB"."SYS_EXPORT_TABLE_01": srcb/******** directory=dumpdir dumpfile=srcb.without.version.dmp tables=stock_quotes,stock_info Estimate in progress using BLOCKS method... Processing object type TABLE_EXPORT/TABLE/TABLE_DATA Total estimation using BLOCKS method: 536.3 MB Processing object type TABLE_EXPORT/TABLE/TABLE Processing object type TABLE_EXPORT/TABLE/COMMENT Processing object type TABLE_EXPORT/TABLE/INDEX/INDEX Processing object type TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS Processing object type TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS . . exported "SRCB"."STOCK_QUOTES" 461.8 MB 5252837 rows . . exported "SRCB"."STOCK_INFO" 284.1 KB 2456 rows Master table "SRCB"."SYS_EXPORT_TABLE_01" successfully loaded/unloaded ****************************************************************************** Dump file set for SRCB.SYS_EXPORT_TABLE_01 is: /share/dumpdir/srcb.without.version.dmp Job "SRCB"."SYS_EXPORT_TABLE_01" successfully completed at 13:48:04
在10.2.0.4的資料庫中匯入,這是會提示版本錯誤:
[[email protected] dumpdp]$ impdp srcb/srcb directory=dumpdir dumpfile=srcb.without.version.dmp logfile=srcb.impdp.without.version.log remap_tablespace=srcb_data:srcb,srcb_indx:srcb Import: Release 10.2.0.4.0 - Production on Monday, 26 November, 2012 13:41:26 Copyright (c) 2003, 2007, Oracle. All rights reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options ORA-39001: invalid argument value ORA-39000: bad dump file specification ORA-39142: incompatible version number 3.1 in dump file "/backup/dumpdp/srcb.without.version.dmp"
2、再來看看使用了version引數的情況
同樣的從11.2.0.3的資料庫中匯出,但是這時帶了version選項,注意:version的值必須要小於或等於目標庫的基本版本(即所謂的11g、10g、9i等),即version值要小於11.1.0.1,否則同樣會報錯:
[[email protected] dumpdir]$ expdp srcb/srcb directory=dumpdir dumpfile=srcb.with.version.dmp tables=stock_quotes,stock_info version=10.2.0.4
Export: Release 11.2.0.3.0 - Production on Mon Nov 26 13:48:27 2012
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Automatic Storage Management, Oracle Label Security, OLAP,
Data Mining, Oracle Database Vault and Real Application Testing options
Starting "SRCB"."SYS_EXPORT_TABLE_01": srcb/******** directory=dumpdir dumpfile=srcb.with.version.dmp tables=stock_quotes,stock_info version=10.2.0.4
Estimate in progress using BLOCKS method...
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 536.3 MB
Processing object type TABLE_EXPORT/TABLE/TABLE
Processing object type TABLE_EXPORT/TABLE/COMMENT
Processing object type TABLE_EXPORT/TABLE/INDEX/INDEX
Processing object type TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
Processing object type TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
. . exported "SRCB"."STOCK_QUOTES" 461.8 MB 5252837 rows
. . exported "SRCB"."STOCK_INFO" 283.7 KB 2456 rows
Master table "SRCB"."SYS_EXPORT_TABLE_01" successfully loaded/unloaded
******************************************************************************
Dump file set for SRCB.SYS_EXPORT_TABLE_01 is:
/share/dumpdir/srcb.with.version.dmp
Job "SRCB"."SYS_EXPORT_TABLE_01" successfully completed at 13:48:38
同樣的還是在10.2.0.4的資料庫中匯入,此時就可以正常匯入了:
[[email protected] dumpdp]$ impdp srcb/srcb directory=dumpdir dumpfile=srcb.with.version.dmp logfile=srcb.impdp.with.version.log remap_tablespace=srcb_data:srcb,srcb_indx:srcb
Import: Release 10.2.0.4.0 - Production on Monday, 26 November, 2012 13:44:31
Copyright (c) 2003, 2007, Oracle. All rights reserved.
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Master table "SRCB"."SYS_IMPORT_FULL_01" successfully loaded/unloaded
Starting "SRCB"."SYS_IMPORT_FULL_01": srcb/******** directory=dumpdir dumpfile=srcb.with.version.dmp logfile=srcb.impdp.with.version.log remap_tablespace=srcb_data:srcb,srcb_indx:srcb
Processing object type TABLE_EXPORT/TABLE/TABLE
Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
. . imported "SRCB"."STOCK_QUOTES" 461.8 MB 5252837 rows
. . imported "SRCB"."STOCK_INFO" 283.7 KB 2456 rows
Processing object type TABLE_EXPORT/TABLE/COMMENT
Processing object type TABLE_EXPORT/TABLE/INDEX/INDEX
Processing object type TABLE_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
Processing object type TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
Job "SRCB"."SYS_IMPORT_FULL_01" successfully completed at 13:47:41
3、其實還有更簡單的資料庫遷移方式,如果網路可以互通的話,則直接使用network_link=database_link的方式遷移,這同時還減少了資料的落地時間,而且還可以跨版本:
先給10g中的使用者授予建立database link的許可權,切換至同步使用者並建立一個連線源資料庫的database link:
[[email protected] ~]$ sqlplus / as sysdba
SQL*Plus: Release 10.2.0.4.0 - Production on Mon Nov 26 13:21:28 2012
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
13:21:28 [email protected]> grant create database link to srcb;
Grant succeeded.
13:21:42 [email protected]> conn srcb
Enter password:
Connected.
13:21:46 [email protected]> create database link to11gdbl connect to srcb identified by srcb using '192.168.220.114:1521/srcbdb';
Database link created.
13:22:16 [email protected]> select * from [email protected];
TNAME TABTYPE CLUSTERID
------------------------------------------------------------ -------------- ----------
STOCK_INFO TABLE
STOCK_INFO2 TABLE
STOCK_QUERY TABLE
STOCK_QUOTES TABLE
STOCK_QUOTES2 TABLE
TMP1 TABLE
TOAD_PLAN_TABLE TABLE
7 rows selected.
在使用上一步建立的database link進行資料遷移:
[[email protected] dumpdp]$ impdp srcb/srcb directory=dumpdir logfile=srcb.impdp.from11g.log network_link=to11gdbl remap_tablespace=srcb_data:srcb,srcb_indx:srcb
Import: Release 10.2.0.4.0 - Production on Monday, 26 November, 2012 13:26:00
Copyright (c) 2003, 2007, Oracle. All rights reserved.
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Starting "SRCB"."SYS_IMPORT_SCHEMA_01": srcb/******** directory=dumpdir logfile=srcb.impdp.from11g.log network_link=to11gdbl remap_tablespace=srcb_data:srcb,srcb_indx:srcb
Estimate in progress using BLOCKS method...
Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
Total estimation using BLOCKS method: 1.048 GB
Processing object type SCHEMA_EXPORT/PRE_SCHEMA/PROCACT_SCHEMA
Processing object type SCHEMA_EXPORT/TABLE/TABLE
ORA-39151: Table "SRCB"."TOAD_PLAN_TABLE" exists. All dependent metadata and data will be skipped due to table_exists_action of skip
. . imported "SRCB"."STOCK_QUOTES" 5252837 rows
. . imported "SRCB"."STOCK_QUOTES2" 5245909 rows
. . imported "SRCB"."STOCK_INFO" 2456 rows
. . imported "SRCB"."STOCK_INFO2" 2456 rows
. . imported "SRCB"."STOCK_QUERY" 146 rows
. . imported "SRCB"."TMP1" 12 rows
Processing object type SCHEMA_EXPORT/TABLE/GRANT/OWNER_GRANT/OBJECT_GRANT
Processing object type SCHEMA_EXPORT/TABLE/COMMENT
Processing object type SCHEMA_EXPORT/TABLE/INDEX/INDEX
Processing object type SCHEMA_EXPORT/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
Processing object type SCHEMA_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS
Processing object type SCHEMA_EXPORT/POST_SCHEMA/PROCACT_SCHEMA
Job "SRCB"."SYS_IMPORT_SCHEMA_01" completed with 1 error(s) at 13:35:38
至此完!
相關推薦
資料泵(expdp/impdp)跨版本匯入,11g匯出10g匯入
最近在做資料庫升級的事情,開發那邊提了個需求說,如果升級並執行幾天後怎麼把新的資料倒回到舊版本的資料庫裡面? 我做升級時是使用資料泵做的資料遷移,大家都知道軟體的使用“一般”情況下都是向下相容的,即例如使用10g的expdp工具匯出的檔案使用11g的impdp匯入到11g的
使用Oracle資料泵EXPDP/IMPDP匯入匯出
示例為ORACLE 11G匯出到ORACLE 10G匯入用資料泵EXPDP,IMPDP做ORACLE匯入、匯出. 優勢如下:1:可以跨不同表空間2:不同ORACLE版本資料方便匯入,匯出3:效率大大高
Oracle資料泵expdp/impdp筆記
作者:fbysssmsn:[email protected] blog:blog.csdn.net/fbysss宣告:本文由fbysss原創,轉載請註明出處關鍵字:oracle 資料泵 expdp/impdp資料泵 是oracle10G的命令必須在伺服器上執行,s
oracle11g 使用資料泵匯入/匯出資料(expdp/impdp)
目標:使用oracle資料泵,將A電腦上的資料庫databaseA匯出後,再匯入到B電腦上的資料庫databaseB中。 A電腦上的操作(expdp資料匯出): 執行cmd; 登入資料庫,輸入
Oracle 資料泵(IMPDP/EXPDP)匯入匯出
最好以system等管理員建立邏輯目錄,Oracle不會自動建立實際的物理目錄“D:\oracleData”(務必手動建立此目錄),僅僅是進行定義邏輯路徑dump_dir; sql> conn system/[email prote
通過資料泵expdp、impdp方式備份與還原(匯出與匯入)Oracle資料庫
前言備份還原oracle資料庫的方式有很多種,本文只講解使用expdp、impdp資料泵方式備份與還原(恢復)資料庫,此種方式可以匯出/匯入資料庫表以及表中的資料。請自行修改目錄路徑,否則出現錯誤別怪我哦~一、備份step1:使用system登入oracle開啟DOS命令列介
資料泵expdp匯出時間很長,匯出速度很慢
參考部落格 日前接到一個case,使用者反映一個表匯出時間特別長,因為擔心影響第二天業務,不得不放棄繼續匯出,但是另外一個表比這個問題表數量更大,但是反而順利匯出,使用者在相同版本測試環境上也能順利匯出,當然測試環境和生產環境還是有差異的,客戶說那個環境是用兩個
expdp/impdp 參數說明,中英對照
覆蓋 columns option opera top calculate rmi tina close 1.expdp參數說明 [[email protected]/* */ ~]$ expdp help=y Export: Release 11.2.0
詳解oracle 12c通過數據泵expdp/impdp工具實現對數據備份、恢復
工具實現 數據庫 RoCE app eat source .com blog con 簡介 Oracle Database 10g引入了最新的數據泵(Data Dump)技術,數據泵導出導入(EXPDP和IMPDP)的作用1.實現邏輯備份和邏輯恢復2.數據庫用戶之間移動對象
資料泵expdp中query的使用及注意事項
在用資料泵匯出資料的時候,有時候我們需要按條件過濾掉一些不需要匯出的資料,這時候就需要用到引數query。下面是一個簡單使用query的小例子,在這個例子中我們也可以看出資料泵的一個缺陷,就是query引數和estimate引數是衝突的,當我們使用query引數的時
從oracle 11g匯出->12c 匯入 ,遇到ORA-39213: Metadata processing is not available
1.從低版本匯出,高版本匯入,需要增加version 2.從高版本匯出,低版本匯入,可以向下相容。 下面我們來看看《1.從低版本匯出,高版本匯入》增加version 後,還是報錯? --下面是11g,加了version='11.2.0.3.0'匯出 [[email&
Oracle利用exp和imp,資料泵impdp和expdp匯入匯出資料,spool匯出資料
Oracle利用exp和imp,資料泵impdp和expdp匯入匯出資料,spool匯出資料 注意: (1)imp只能匯入exp匯出的檔案 ,imp,exp是客戶端程式,操作少量資料 (2)impdp只能匯入expdp匯出的檔案,impdp,expdp是伺服器端程式,操作適量大的
【Oracle】匯入和匯出 EXP / IMP 和 EXPDP / IMPDP 資料泵匯出匯入的方法
【Oracle】EXPDP和IMPDP資料泵進行匯出匯入的方法 一、expdp/impdp和exp/imp的區別 1、exp和imp是客戶端工具程式,它們既可以在客戶端使用,也可以在服務端使用。 2、expdp和impdp是服務端的工具程式,他們只能在oracle服務端
ORACLE使用EXPDP和IMPDP資料泵進行匯出匯入的方法
ORACLE使用EXPDP和IMPDP資料泵進行匯出匯入的方法 使用expdp和impdp時應該注重的事項: 1、exp和imp是客戶端工具程式,它們既可以在客戶端使用,也可以在服務端使用。 2、expdp和impdp是服務端的工具程式,他們只能在oracle服務端使用,不能在客戶端使
ORACLE--匯入匯出/資料泵(imp/exp impdp/expdp)
最近有很多人遇到關於ORACLE資料庫,dmp檔案恢復的問題。 首先我先說一下匯入匯出: 1、強調一下目標庫,首先目標庫設定成為非歸檔模式,nologgong模式更好。(這個操作需要停庫) 2、匯入的時候可以先將索引和約束去掉(disable)(index
expdp與impdp(資料泵匯出與匯入)
FLASHBACK_SCN=scn_value:Scn_value用於標識SCN值.FLASHBACK_SCN和FLASHBACK_TIME不能同時使用Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dmp FLASHBACK_SCN=3585238、FLASHBACK
補:Oracle 的資料泵匯出(expdp)及匯入(impdp)
之前本來想寫篇exp-imp,expdp-impdp的簡單介紹的, 結果發現簡單寫了下exp-imp就挺長一篇了,所以就把expdp-impdp分開來寫了。放下之前的連結:https://blog.csdn.net/huay_li/article/detail
使用expdp/impdp資料泵匯出/匯入資料!
資料泵是oracle 10g推出的新功能,expdp/impdp和exp/imp的區別: exp/imp是客戶端工具,可以在客戶端使用,也可以在服務端使用。expdp/impdp是服務端工具,只能在服務端使用。 expdp引數說明 [[email protect
資料泵impdp和expdp
*資料泵只有在oracle 10g後的版本可用,並只有在服務端可用。 1.練習時,出現了ORA-39002、ORA-39070、ORA-39087這三個錯誤,如圖: 解決方法: 用sysdba身份連線資料庫:conn / as sysdba 檢視字典目錄:select 
EXPDP/IMPDP 資料泵命令引數
資料泵匯出實用程式提供了一種用於在 Oracle 資料庫之間傳輸 資料物件的機制。該實用程式可以使用以下命令進行呼叫: 示例: expdp scott/tiger DIRECTORY=dmpdir DUMPFILE=scott.dmp 您可以控制匯出的執行方式。具體方法是: