oracle 11g备份,导入oracle 10g
11g備份,導(dǎo)入10g的時候會拋錯,直接阻止導(dǎo)入。
但是有時候還必須得把11g的數(shù)據(jù)庫導(dǎo)入到10g,我今天就遇到了這種情況。
一開始只是把11g中的表全部備份,成功導(dǎo)入10g。但是缺少視圖、存儲過程等。一個個sql創(chuàng)建累死人,方法太笨。請教了一下資深DBA,重新備份,重新導(dǎo)入,成功。
現(xiàn)在把我導(dǎo)入操作的全過程記錄下來,希望可以方便更多的人!
一、在11g服務(wù)器上,使用expdp命令備份數(shù)據(jù)
EXPDP?USERID='sys/sys@orcl?as sysdba' schemas=hsrep directory=DATA_PUMP_DIR dumpfile=aa.dmp logfile=aa.log version=10.2.0.1.0
其中,紅色文字部分是根據(jù)需要改寫的地方。例如我的sys密碼是sys,數(shù)據(jù)庫sid是orcl,要到出的用戶名是hsrep,要導(dǎo)入到10.2.0.1.0版本的Oracle數(shù)據(jù)庫中去。aa.dmp和aa.log將會在11g的dpdump目錄中生成,例如我的11g裝在了E盤下面,于是aa.dmp將會在E:\app\Administrator\admin\cuc\dpdump目錄下被生成。
二、在10g服務(wù)器上,使用impdp命令恢復(fù)數(shù)據(jù)
準(zhǔn)備工作:1.建庫2.建表空間3.建用戶并授權(quán)4.將aa.dmp拷貝到10g的dpdump目錄下
1-3點可以去參考博主的上一篇博客“Oracle數(shù)據(jù)庫移植全步驟”,介紹的很詳細,這里不再多說。關(guān)于第4點,我的10g裝在了D:\oracle\product\10.2.0\admin\orcl\dpdump目錄下,于是我將aa.dmp文件拷貝到了D:\oracle\product\10.2.0\admin\orcl\dpdump 目錄下。
IMPDP?USERID='SYS/sys@orcl?as sysdba' schemas=hserp directory=DATA_PUMP_DIR dumpfile=aa.dmp logfile=aa.log version=10.2.0.1.0
其中紅色部分是根據(jù)需要改寫的地方。例如我的sys密碼是sys,數(shù)據(jù)庫sid是orcl,要導(dǎo)入用戶名為hsrep,要導(dǎo)入到10.2.0.1.0版本的Oracle數(shù)據(jù)庫中去。aa.log將會在10g的dpdump目錄中生成。
---------------
注意:導(dǎo)入和導(dǎo)出的用戶必須一致!
裝載:http://blog.sina.com.cn/s/blog_5a2405d10100nerv.html
網(wǎng)上也有人說:可以先用一個10g的client導(dǎo)出11g的數(shù)據(jù),在把導(dǎo)出的.dmp??imp到你想要導(dǎo)入的10g的機器。經(jīng)過實驗發(fā)現(xiàn)有些觸發(fā)器用10g導(dǎo)出的話是會報錯的。還需要手動去建表上面的觸發(fā)器。
總結(jié)
以上是生活随笔為你收集整理的oracle 11g备份,导入oracle 10g的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java读取xml文件的四种方法
- 下一篇: spring定时任务时间格式cronEx