Oracle数据的导出与导入
前序:關(guān)于Oracle9i數(shù)據(jù)的導(dǎo)出與導(dǎo)入問(wèn)題,折騰我好長(zhǎng)時(shí)間了,尤其是導(dǎo)入。今天在一位同事的指導(dǎo)下,算是終于成功了,為了記住這位同事的幫助,在此僅以“坤”作為記號(hào)。
正文:
Oracle數(shù)據(jù)導(dǎo)出:
如果是導(dǎo)出本機(jī)的Oracle數(shù)據(jù)庫(kù):
exp pcisv62/11@ORCL? file="d:\pcisv62081226.dmp"? full=y????
(ORCL為本地?cái)?shù)據(jù)庫(kù)監(jiān)聽(tīng))
如果是導(dǎo)出服務(wù)器端的Oracle數(shù)據(jù):
exp pcisv62/11@tnsname? file="d:\pcisv62081226.dmp" full=y
(tnsname為COREV6_DBSERVER,SID為COREV6,主機(jī)為DBSERVER。)
exp pcisv6_ab/11@COREV6_DBSERVER file=d:\v6100210.dmp rows=y buffer=1024000
注意:必須是 DBA 才能執(zhí)行完整數(shù)據(jù)庫(kù)或表空間導(dǎo)出操作。
Oracle數(shù)據(jù)導(dǎo)入,分以下步驟:
1.先在Oracle9i的Enterprise Manager Console下,以sys/sys及sysdba身份登陸,在“存儲(chǔ)”-->“表空間”下創(chuàng)建表空間COREV6,同時(shí)給其分配合適的空間。
2.在“安全性”-->“用戶”下創(chuàng)建用戶pcisv62,使用戶默認(rèn)的表空間為COREV6,同時(shí)在“角色”里授予CONNECT、DBA、EXP_FULL_DATABASE、IMP_FULL_DATABASE、RESOURCE。
3.導(dǎo)入.dmp文件,開(kāi)始-->運(yùn)行cmd,導(dǎo)入命令:
imp pcisv6_ab/11@ORCL file=d:\v6100210.dmp? full=y ignore=y
注意:如果備份的.dmp文件是以用戶pcisv62導(dǎo)出COREV6空間的數(shù)據(jù),那么
1.新建的用戶最好是pcisv62,否則命令為:
??imp pcisv62/11@ORCL file=d:\v6100210.dmp?? fromuser=pcisv62? touser=pcisv6_ab?? full=y? ignore=y? rows=y? tablespaces=corev6?
2.與新建用戶關(guān)聯(lián)的新建空間名必須為COREV6,否則Oracle報(bào)找不到COREV6空間的錯(cuò)誤。
?
數(shù)據(jù)成功導(dǎo)入以后,下一步就是配置Tomcat的server.xml文件:
1.如果用到的是本機(jī)上的數(shù)據(jù),本地?cái)?shù)據(jù)源里的部分配置為: username="pcisv62" password="11"
url="jdbc:oracle:thin:@localhost:1521:orcl"
2.如果用到的是服務(wù)器上的數(shù)據(jù),則數(shù)據(jù)源里的部分配置為: username="pcisv62" password="11"
url="jdbc:oracle:thin:@dbserver:1521:corev6"(dbserver為服務(wù)器的名字,corev6為服務(wù)器上Oracle的SID)
?
oracle的安裝目錄E:\oracle\ora92\network\admin下的tnsnames.ora:
本地配置:
ORCL =
? (DESCRIPTION =
??? (ADDRESS_LIST =
????? (ADDRESS = (PROTOCOL = TCP)(HOST = 主機(jī)名)(PORT = 1521))
??? )
??? (CONNECT_DATA =
????? (SERVER = DEDICATED)
????? (SERVICE_NAME = ORCL)
??? )
? )
或服務(wù)器配置:
COREV6_DBSERVER =
? (DESCRIPTION =
??? (ADDRESS_LIST =
????? (ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1521))
??? )
??? (CONNECT_DATA =
????? (SID = COREV6)
????? (SERVER = DEDICATED)
??? )
? )
以下轉(zhuǎn)載:幾種導(dǎo)入導(dǎo)出的命令方法,以備以后查閱。
數(shù)據(jù)導(dǎo)出:
exp qhmis/qhmis@qhmis? file='d:\backup\qhmis\qhmis20060526.dmp'? grants=y? full=n
?1 將數(shù)據(jù)庫(kù)TEST完全導(dǎo)出,用戶名system 密碼manager 導(dǎo)出到D:\daochu.dmp中
?? exp system/manager@TEST file=d:\daochu.dmp full=y
?2 將數(shù)據(jù)庫(kù)中system用戶與sys用戶的表導(dǎo)出
?? exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
?3 將數(shù)據(jù)庫(kù)中的表table1 、table2導(dǎo)出
?? exp system/manager@TEST file=d:\daochu.dmp tables=(table1,table2)?
?4 將數(shù)據(jù)庫(kù)中的表table1中的字段filed1以"00"打頭的數(shù)據(jù)導(dǎo)出
?? exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"???????
數(shù)據(jù)的導(dǎo)入:
?1 將D:\daochu.dmp 中的數(shù)據(jù)導(dǎo)入 TEST數(shù)據(jù)庫(kù)中。
?? imp system/manager@TEST? file=d:\daochu.dmp
?? 上面可能有點(diǎn)問(wèn)題,因?yàn)橛械谋硪呀?jīng)存在,然后它就報(bào)錯(cuò),對(duì)該表就不進(jìn)行導(dǎo)入。
?? 在后面加上 ignore=y 就可以了。
?2 將d:\daochu.dmp中的表table1 導(dǎo)入
?imp system/manager@TEST? file=d:\daochu.dmp? tables=(table1)
總結(jié)
以上是生活随笔為你收集整理的Oracle数据的导出与导入的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: jeecg_framework_v2.1
- 下一篇: 系统的MAC地址修改