新聞中心
Oracle數(shù)據(jù)庫是目前應(yīng)用廣泛的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),其強(qiáng)大的功能和穩(wěn)定性受到了眾多企業(yè)和用戶的贊譽。但在實際應(yīng)用中,有時我們需要將Oracle數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)出到本地,進(jìn)行二次處理或備份。本篇文章將介紹Oracle數(shù)據(jù)庫如何導(dǎo)出到本地,主要包括以下內(nèi)容:

1. 導(dǎo)出數(shù)據(jù)的前置條件
在進(jìn)行數(shù)據(jù)導(dǎo)出前,首先需要滿足以下條件:
(1)必須具有 Oracle 數(shù)據(jù)庫的導(dǎo)出權(quán)限;
(2)知道要導(dǎo)出的表或主題的名稱;
(3)知道數(shù)據(jù)導(dǎo)出后的存儲位置;
(4)更好在非高峰期進(jìn)行數(shù)據(jù)導(dǎo)出。
2. 操作步驟
Oracle數(shù)據(jù)庫提供了多種導(dǎo)出數(shù)據(jù)的方式,包括導(dǎo)出整個數(shù)據(jù)庫、導(dǎo)出指定表或視圖、導(dǎo)出數(shù)據(jù)的結(jié)構(gòu)或數(shù)據(jù)本身等。下面簡要介紹一下這些方式的操作步驟。
(1)導(dǎo)出整個數(shù)據(jù)庫
導(dǎo)出整個數(shù)據(jù)庫的方式是將數(shù)據(jù)庫的結(jié)構(gòu)和數(shù)據(jù)全部導(dǎo)出到一個文件中,使用方便,但文件通常比較大,需要較長的時間和存儲空間。具體操作步驟如下:
① 使用 SQL PLUS 或者 Oracle SQL Developer 連接到需要導(dǎo)出的數(shù)據(jù)庫;
② 在 SQL PLUS 或者 Oracle SQL Developer 中輸入以下命令:
“` sql
exp userid=用戶名/密碼@數(shù)據(jù)庫名 file=存儲位置\導(dǎo)出文件名.dmp log=日志文件名.log full=y
“`
其中,用戶名為數(shù)據(jù)庫的用戶名,密碼為該用戶的密碼,數(shù)據(jù)庫名為目標(biāo)數(shù)據(jù)庫的名稱,存儲位置為導(dǎo)出文件所在的目錄,導(dǎo)出文件名為自定義的名稱,.dmp 表示數(shù)據(jù)導(dǎo)出的二進(jìn)制文件,日志文件名為導(dǎo)出過程的日志文件,full=y 表示導(dǎo)出整個數(shù)據(jù)庫。
③ 執(zhí)行上述命令并等待導(dǎo)出完成。
(2)導(dǎo)出指定表或視圖
導(dǎo)出指定表或視圖的方式只導(dǎo)出所需的數(shù)據(jù)和結(jié)構(gòu),導(dǎo)出后文件體積較小,但需要多次執(zhí)行導(dǎo)出命令。具體操作步驟如下:
① 使用 SQL PLUS 或者 Oracle SQL Developer 連接到需要導(dǎo)出的數(shù)據(jù)庫;
② 在 SQL PLUS 或者 Oracle SQL Developer 中輸入以下命令:
“` sql
exp userid=用戶名/密碼@數(shù)據(jù)庫名 file=存儲位置\導(dǎo)出文件名.dmp log=日志文件名.log tables=(表名1,表名2,….) views=(視圖名1,視圖名2,….)
“`
其中,表名和視圖名為需要導(dǎo)出的表或視圖的名稱,多個表或視圖用逗號分隔。
③ 執(zhí)行上述命令并等待導(dǎo)出完成。
(3)導(dǎo)出數(shù)據(jù)的結(jié)構(gòu)或數(shù)據(jù)本身
有時候我們只需要導(dǎo)出表或視圖的結(jié)構(gòu)或數(shù)據(jù)本身,可以使用以下方式進(jìn)行導(dǎo)出。
1)導(dǎo)出表或視圖結(jié)構(gòu)
導(dǎo)出表或視圖結(jié)構(gòu)的方式只導(dǎo)出表或視圖的結(jié)構(gòu),不包括數(shù)據(jù)。具體操作步驟如下:
① 使用 SQL PLUS 或者 Oracle SQL Developer 連接到需要導(dǎo)出的數(shù)據(jù)庫;
② 在 SQL PLUS 或者 Oracle SQL Developer 中輸入以下命令:
“` sql
exp userid=用戶名/密碼@數(shù)據(jù)庫名 file=存儲位置\導(dǎo)出文件名.dmp log=日志文件名.log rows=n
“`
其中,rows=n 表示不導(dǎo)出數(shù)據(jù),n 可隨意設(shè)置。
③ 執(zhí)行上述命令并等待導(dǎo)出完成。
2)導(dǎo)出表或視圖數(shù)據(jù)本身
導(dǎo)出數(shù)據(jù)本身的方式只導(dǎo)出表或視圖的數(shù)據(jù)信息,不包括結(jié)構(gòu)。具體操作步驟如下:
① 使用 SQL PLUS 或者 Oracle SQL Developer 連接到需要導(dǎo)出的數(shù)據(jù)庫;
② 在 SQL PLUS 或者 Oracle SQL Developer 中輸入以下命令:
“` sql
exp userid=用戶名/密碼@數(shù)據(jù)庫名 file=存儲位置\導(dǎo)出文件名.dmp log=日志文件名.log rows=y
“`
其中,rows=y 表示只導(dǎo)出數(shù)據(jù)信息,不包括表結(jié)構(gòu)。
③ 執(zhí)行上述命令并等待導(dǎo)出完成。
3.
Oracle數(shù)據(jù)庫是目前廣泛應(yīng)用的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),如何將Oracle數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)出到本地進(jìn)行備份或處理,是很多用戶關(guān)注的問題。本文介紹了Oracle數(shù)據(jù)庫導(dǎo)出數(shù)據(jù)的幾種方式,包括導(dǎo)出整個數(shù)據(jù)庫、導(dǎo)出指定表或視圖、導(dǎo)出數(shù)據(jù)的結(jié)構(gòu)或數(shù)據(jù)本身等。通過上述方法,可以便捷地將Oracle數(shù)據(jù)庫中的數(shù)據(jù)導(dǎo)出到本地進(jìn)行二次處理或備份,幫助用戶提高工作效率和數(shù)據(jù)安全性。
成都網(wǎng)站建設(shè)公司-創(chuàng)新互聯(lián),建站經(jīng)驗豐富以策略為先導(dǎo)10多年以來專注數(shù)字化網(wǎng)站建設(shè),提供企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計,響應(yīng)式網(wǎng)站制作,設(shè)計師量身打造品牌風(fēng)格,熱線:028-86922220oracle數(shù)據(jù)庫里的數(shù)據(jù)怎么導(dǎo)出
Oracle數(shù)據(jù)導(dǎo)入導(dǎo)出imp/exp
功能:Oracle數(shù)據(jù)導(dǎo)入導(dǎo)出imp/exp就相當(dāng)與oracle數(shù)據(jù)還原與備份。
大多情況都可以用Oracle數(shù)據(jù)導(dǎo)入導(dǎo)出完成數(shù)據(jù)的備份和還原(不會造成數(shù)據(jù)的丟失)。
Oracle有個好處,雖然你的電腦不是服務(wù)器,但是你裝了oracle客戶端,并建立了連接
(通過Net Configuration Assistant添加正確的服務(wù)命名,其實你可以想成是客戶端與服務(wù)器端 修了條路,然后數(shù)據(jù)就可以被拉過來了)
這樣你可以把數(shù)據(jù)導(dǎo)出到本地,雖然可能服務(wù)器離你很遠(yuǎn)。
你同樣可以把dmp文件從本地導(dǎo)入到遠(yuǎn)處的數(shù)據(jù)庫服務(wù)器中。
利用這個功能你可以構(gòu)建倆個相同的數(shù)據(jù)庫,一個用來測試,一個用來正式使用。
執(zhí)行環(huán)境:可以在SQLPLUS.EXE或者DOS(命令行)中執(zhí)行,悄拿消
DOS中可以執(zhí)行時由于 在oracle 8i 中 安裝目錄\$ora10g\BIN被設(shè)置為全局路徑,
該目錄下有EXP.EXE與IMP.EXE文件被用來執(zhí)行導(dǎo)入導(dǎo)出。
oracle用java編寫,我想SQLPLUS.EXE、EXP.EXE、IMP.EXE這倆個文件是被包裝后的類文件。
SQLPLUS.EXE調(diào)啟知用敏拍EXP.EXE、IMP.EXE他們所包裹的類,完成導(dǎo)入導(dǎo)出功能。
下面介紹的是導(dǎo)入導(dǎo)出的實例,向?qū)雽?dǎo)出看實例基本上就可以完成,因為導(dǎo)入導(dǎo)出很簡單。
數(shù)據(jù)導(dǎo)出:
1 將數(shù)據(jù)庫TEST完全導(dǎo)出,用戶名system 密碼manager 導(dǎo)出到D:\daochu.dmp中
exp system/manager@TEST file=d:\daochu.dmp full=y
2 將數(shù)據(jù)庫中system用戶與sys用戶的表導(dǎo)出
exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
3 將數(shù)據(jù)庫中的表table1 、table2導(dǎo)出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)
4 將數(shù)據(jù)庫中的表table1中的字段filed1以”00″打頭的數(shù)據(jù)導(dǎo)出
exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\” where filed1 like ‘00%’\”
上面是常用的導(dǎo)出,對于壓縮我不太在意,用winzip把dmp文件可以很好的壓縮。
不過在上面命令后面 加上 compress=y 就可以了
數(shù)據(jù)的導(dǎo)入
1 將D:\daochu.dmp 中的數(shù)據(jù)導(dǎo)入 TEST數(shù)據(jù)庫中。
imp system/manager@TEST file=d:\daochu.dmp
上面可能有點問題,因為有的表已經(jīng)存在,然后它就報錯,對該表就不進(jìn)行導(dǎo)入。
在后面加上 ignore=y 就可以了。
2 將d:\daochu.dmp中的表table1 導(dǎo)入
imp system/manager@TEST file=d:\daochu.dmp tables=(table1)
基本上上面的導(dǎo)入導(dǎo)出夠用了。不少情況我是將表徹底刪除,然后導(dǎo)入。
注意:
你要有足夠的權(quán)限,權(quán)限不夠它會提示你。
數(shù)據(jù)庫時可以連上的。可以用tnsping TEST 來獲得數(shù)據(jù)庫TEST能否連上。
數(shù)據(jù)導(dǎo)出:
exp hkb/hkb@boss_14 full=y file=c:\orabackup\hkbfull.dmp log=c:\orabackup\hkbfull.log;
導(dǎo)出注意事項:導(dǎo)出的是當(dāng)前用戶的的數(shù)據(jù),當(dāng)前用戶如果有DBA的權(quán)限,則導(dǎo)出所有數(shù)據(jù)!
同名用戶之間的數(shù)據(jù)導(dǎo)入:
imp hkb/hkb@xe file=c:\orabackup\hkbfull.dmp log=c:\orabackup\hkbimp.log full=y
不同名之間的數(shù)據(jù)導(dǎo)入:
imp system/test@xe fromuser=hkb touser=hkb_new file=c:\orabackup\hkbfull.dmp
log=c:\orabackup\hkbimp.log;
直接導(dǎo)出就行了!然后把慶祥備導(dǎo)出的文件給其他人在導(dǎo)入!
(假如你的數(shù)據(jù)庫名稱是orcl,用戶為test,密碼為test)
導(dǎo)出方法:在dos命令行里面輸入下面的代碼
exp
test/test@orcl
full=y
file=d:\data.dat
導(dǎo)出成功后就會在d盤根目錄下生成一個data.dat的數(shù)據(jù)文件,把這個文件拷貝到其他機(jī)器上
導(dǎo)入方譽毀宴笑法:在另外一臺機(jī)器上新建一個用戶名字和導(dǎo)出的一樣還是test。
imp
test/test@orcl
file=d:\data.dat
關(guān)于oracle數(shù)據(jù)庫導(dǎo)出到本地的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
創(chuàng)新互聯(lián)【028-86922220】值得信賴的成都網(wǎng)站建設(shè)公司。多年持續(xù)為眾多企業(yè)提供成都網(wǎng)站建設(shè),成都品牌建站設(shè)計,成都高端網(wǎng)站制作開發(fā),SEO優(yōu)化排名推廣服務(wù),全網(wǎng)營銷讓企業(yè)網(wǎng)站產(chǎn)生價值。
網(wǎng)頁題目:Oracle數(shù)據(jù)庫如何導(dǎo)出到本地?(oracle數(shù)據(jù)庫導(dǎo)出到本地)
分享鏈接:http://www.dlmjj.cn/article/djgppcp.html


咨詢
建站咨詢
