Oracle 10g與Oracle 11g之間的導(dǎo)入與導(dǎo)出

一. 問題場景描述:

今天在做項(xiàng)目過程中杂腰,需要將別人機(jī)子里面的Oracle數(shù)據(jù)庫數(shù)據(jù)復(fù)制一份到自己本地機(jī)子上,因?yàn)橹皩iT總結(jié)過一篇關(guān)于Oracle數(shù)據(jù)庫導(dǎo)入與導(dǎo)出(exp/imp)的文章即:《Oracle導(dǎo)出/導(dǎo)入數(shù)據(jù)》断箫,所以這次想必應(yīng)該so easy网棍!

可去執(zhí)行操作的時(shí)候兼蜈,發(fā)現(xiàn)不管導(dǎo)出的是.sql文件還是.dmp文件,都會(huì)報(bào)錯(cuò)序宦。即使最后嘗試使用Oracle SQL Developer進(jìn)行復(fù)制操作睁壁,依然會(huì)報(bào)錯(cuò)。而報(bào)錯(cuò)內(nèi)容花樣還挺多挨厚,有說是表或視圖不存在的堡僻,也有說是語法不正確的。

一直沒搞清楚是什么原因疫剃,直到腦子一個(gè)機(jī)靈钉疫,估計(jì)是Oracle數(shù)據(jù)庫版本不同的緣故。查了一下巢价,發(fā)現(xiàn)果然不一樣牲阁。一個(gè)是Oracle11g固阁,一個(gè)是Oracle10g,再查看一下規(guī)則城菊,果然是因?yàn)榘姹静煌斐傻摹?/p>

二. Oracle 的exp/imp特性:

Oracle的imp/exp組件的一個(gè)操作原則就是向下兼容备燃,且有一些規(guī)則:

規(guī)則1:低版本的exp/imp可以連接到高版本(或同版本)的數(shù)據(jù)庫服務(wù)器,但高版本的exp/imp不能連接到低版本的數(shù)據(jù)庫服務(wù)器凌唬。

規(guī)則2:高版本exp出的dmp文件并齐,低版本無法imp(無法識(shí)別dmp文件);低版本exp出的dmp文件客税,高版本可以imp(向下兼容)况褪。

規(guī)則3:從Oracle 低版本Export的數(shù)據(jù)可以Import到Oracle高版本中,但限于Oracle的相鄰版本更耻,如從Oracle 7 到 Oracle 8测垛。對(duì)于兩個(gè)不相鄰版本間進(jìn)行轉(zhuǎn)換,如從Oracle 6 到 Oracle 8秧均,則應(yīng)先將數(shù)據(jù)輸入到中間版本Oracle 7食侮,再從中間數(shù)據(jù)庫轉(zhuǎn)入更高版本Oracle 8。

在進(jìn)行導(dǎo)入imp過程中目胡,我的操作之所以出錯(cuò)锯七,正是因?yàn)檫`反了規(guī)則2中的內(nèi)容:低版本無法imp高版本emp的dmp文件。

三. Oracle 的IMPDP/EXPDP的特性:

  1. 在Oracle 9i以后引入數(shù)據(jù)泵命令I(lǐng)MPDP/EXPDP誉己,Oracle 11g中exp命令是無法導(dǎo)出數(shù)據(jù)庫中的空表的起胰,但可以通過EXPDP導(dǎo)出
  2. Oracle 11g通過exp導(dǎo)出的數(shù)據(jù)是無法通過imp導(dǎo)入到oracle10g中的巫延,但可以通過expdp和impdp完成
  3. IMPDP/EXPDP是服務(wù)器端的命令地消,無法在客戶端使用炉峰,需要在DOS窗口中進(jìn)行操作。

四. oracle10g數(shù)據(jù)導(dǎo)入到oracle11g中:

在oracle10g上執(zhí)行:

Exp ccense/ccense@orcl file=D:\2012123101.dmp 

在oracle11g上創(chuàng)建好表空間和用戶后執(zhí)行:

Imp  ccense/ccense@orcl file=D:\20121231001.dmp 

這點(diǎn)與Oracle 10g之間的導(dǎo)入/導(dǎo)出相同脉执,具體流程詳見《Oracle導(dǎo)出/導(dǎo)入數(shù)據(jù)》中的操作疼阔。

五.Oracle11g數(shù)據(jù)導(dǎo)入到Oracle 10g中:

1. 在Oracle 11g服務(wù)器命令行中用EXPDP導(dǎo)出數(shù)據(jù)

(1) 連接Oracle 11g源數(shù)據(jù)庫,創(chuàng)建生成文件的目錄:
語法:

create directory 目錄名(如:dmpbx) as 存儲(chǔ)地址(如:'/root/usr/……');

具體操作實(shí)例:

SQL> create directory TIANZHI_UC_DATA_PUMP;
--此處沒有帶as,原因地址忘記了,這個(gè)可根據(jù)實(shí)際場景進(jìn)行修改.
目錄已創(chuàng)建。

(2) 授予權(quán)限
語法:

grant read,write on directory 目錄名 to public;

具體操作實(shí)例:

SQL> grant read,write on directory TIANZHI_UC_DATA_PUMP to public;
授權(quán)成功半夷。
SQL> exit

(3) 導(dǎo)出文件
語法:

expdp 用戶名1/密碼@實(shí)例 dumpfile=備份文件名(ecology.dmp) directory= 目錄名(dmpbx)

具體示例說明:

EXPDP USERID='szairpay/szairpay@orcl' schemas=szairpay directory=DATA_PUMP_DIR dumpfile=sz11g.dmp logfile=sz11g.log version=10.2.0.3.0'

szairpay/szairpay@orcl 賬號(hào)/密碼@數(shù)據(jù)庫實(shí)例
schemas=szairpay 可省略
directory=data_pump_dir 放生成文件的目錄婆廊,一般會(huì)生成到admin\orcl\dpdump
dumpfile=sz11g.dmp 生成的文件名
logfile=sz11g.log 日志
version=10.2.0.3.0 對(duì)應(yīng)要放的10g的oracle版本
以上參數(shù)右邊的值都可以按實(shí)際情況改

實(shí)際運(yùn)行時(shí)的代碼:

EXPDP USERID='tianzhi_uc/uc123456@173.18.10.213:1521/orcl' directory=TIANZHI_UC_DATA_PUMP dumpfile=tianzhi_uc_02.dmp logfile=tianzhi_uc_02.log version=10.2.0.1.0
導(dǎo)出數(shù)據(jù) 1

導(dǎo)出數(shù)據(jù) 2

從提示語的結(jié)尾處,可以看到導(dǎo)出的.dmp文件TIANZHI_UC_02.DMP保存在源機(jī)上的C盤下巫橄。

2.在Oracle 10g服務(wù)器DOS命令行中用IMPDP導(dǎo)入數(shù)據(jù):

步驟:
(1). 建表空間;
(2). 建用戶并授權(quán);
(3). 將tianzhi_uc_02.dmp和tianzhi_uc_02.log文件從源數(shù)據(jù)庫的服務(wù)器上拷貝到10g的dpdump目錄下
(4). impdp導(dǎo)入數(shù)據(jù)庫

(1) 建表空間:
create tablespace tianzhi_uc datafile 'E:\oracle\product\10.2.0\oradata\orcl\tianzhi_uc.dbf' size 1000m;  

注意: 此表空間名要與11g中的表空間一致

(2) 建用戶:
create user tianzhi_uc identified by uc123456 default tablespace tianzhi_uc quota 500m on users;  
--注意: 此用戶名要與11g中的用戶名一致

--授權(quán):
grant create session to tianzhi_uc;
grant connect to tianzhi_uc;
grant connect, resource, dba to tianzhi_uc;
grant create table to tianzhi_uc;
grant create view to tianzhi_uc;
grant create trigger to tianzhi_uc;
grant select any table to tianzhi_uc;
grant create sequence to tianzhi_uc;
grant create procedure to tianzhi_uc;
grant create role to tianzhi_uc;
grant create type to tianzhi_uc;

grant all privileges to tianzhi_uc;
grant dba to tianzhi_uc;
(3) 復(fù)制.dmp文件

我本地機(jī)器中的Oracle 10g裝在了E:/根目錄下淘邻,于是將tianzhi_uc_02.dmptianzhi_uc_02.log文件從源數(shù)據(jù)庫的服務(wù)器上拷貝到E:\Oracle\product\10.2.0\admin\orcl\dpdump目錄下。

創(chuàng)建目錄命令如下:

sqlplus tianzhi_uc/uc123456@orcl
sql>create directory DATA_PUMP_DIR as 'E:\Oracle\product\10.2.0\admin\orcl\dpdump';
創(chuàng)建目錄

5湘换、導(dǎo)入數(shù)據(jù):

IMPDP USERID='tianzhi_uc/uc123456@orcl as sysdba'  directory=DATA_PUMP_DIR dumpfile=tianzhi_uc_02.dmp logfile=tianzhi_uc_02.log version=10.2.0.1.0
導(dǎo)入數(shù)據(jù)

到這里為止宾舅,所有的操作都完成了统阿,終于看到了久違的消息:操作完成!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末筹我,一起剝皮案震驚了整個(gè)濱河市扶平,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蔬蕊,老刑警劉巖结澄,帶你破解...
    沈念sama閱讀 210,978評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異岸夯,居然都是意外死亡麻献,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門囱修,熙熙樓的掌柜王于貴愁眉苦臉地迎上來赎瑰,“玉大人,你說我怎么就攤上這事破镰〔吐” “怎么了?”我有些...
    開封第一講書人閱讀 156,623評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵鲜漩,是天一觀的道長源譬。 經(jīng)常有香客問我,道長孕似,這世上最難降的妖魔是什么踩娘? 我笑而不...
    開封第一講書人閱讀 56,324評(píng)論 1 282
  • 正文 為了忘掉前任,我火速辦了婚禮喉祭,結(jié)果婚禮上养渴,老公的妹妹穿的比我還像新娘。我一直安慰自己泛烙,他們只是感情好理卑,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,390評(píng)論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蔽氨,像睡著了一般藐唠。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上鹉究,一...
    開封第一講書人閱讀 49,741評(píng)論 1 289
  • 那天宇立,我揣著相機(jī)與錄音,去河邊找鬼自赔。 笑死妈嘹,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的绍妨。 我是一名探鬼主播蟋滴,決...
    沈念sama閱讀 38,892評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼染厅,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了津函?” 一聲冷哼從身側(cè)響起肖粮,我...
    開封第一講書人閱讀 37,655評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎尔苦,沒想到半個(gè)月后涩馆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,104評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡允坚,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年魂那,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片稠项。...
    茶點(diǎn)故事閱讀 38,569評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡涯雅,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出展运,到底是詐尸還是另有隱情活逆,我是刑警寧澤,帶...
    沈念sama閱讀 34,254評(píng)論 4 328
  • 正文 年R本政府宣布拗胜,位于F島的核電站蔗候,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏埂软。R本人自食惡果不足惜锈遥,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,834評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望勘畔。 院中可真熱鬧所灸,春花似錦、人聲如沸炫七。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽诉字。三九已至,卻和暖如春知纷,著一層夾襖步出監(jiān)牢的瞬間壤圃,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評(píng)論 1 264
  • 我被黑心中介騙來泰國打工琅轧, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留伍绳,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,260評(píng)論 2 360
  • 正文 我出身青樓乍桂,卻偏偏與公主長得像冲杀,于是被迫代替她去往敵國和親效床。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,446評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容