Oracle 導(dǎo)入/導(dǎo)出 exp/imp
來源:程序員人生 發(fā)布時(shí)間:2015-03-26 09:47:00 閱讀次數(shù):3324次
export 導(dǎo)出數(shù)據(jù),dmp文件,其實(shí)就是select。
import 導(dǎo)入數(shù)據(jù),其實(shí)就是insert
缺點(diǎn):導(dǎo)出的時(shí)候需要全表導(dǎo)出,速度慢,不是實(shí)時(shí),而且是邏輯備份
1:EXP
exp導(dǎo)出分為1下幾種模式
表模式: 導(dǎo)出某個(gè)用戶下指定的表
用戶模式: 導(dǎo)出某個(gè)用戶下所有的對象
數(shù)據(jù)庫模式: 導(dǎo)出除sys之外數(shù)據(jù)庫里所有的對象,exp_full_database權(quán)限
可傳輸表空間: 導(dǎo)出某個(gè)表空間所有對象
exp語句使用幫助:$ exp help=y
1.1:導(dǎo)出某個(gè)用戶下指定的表
$ exp doiido/doiido file=doiido.dmp tables=(doiido,boy) log=doiido.log
1.2:導(dǎo)出某個(gè)用戶下所有的對象
$ exp doiido/doiido@doiido file=doiido.dmp owner=doiido log=doiido.log
1.3:導(dǎo)出全部數(shù)據(jù)庫(除sys用戶下的數(shù)據(jù)字典)
SQL> grant exp_full_database to doiido;
$ exp doiido/doiido file=doiido.dmp full=y log=doiido.log
1.4:導(dǎo)出表空間
$ exp system/doiido@orcl file=doiido.dmp tablespaces=(doiido)
1.5:在windows下遠(yuǎn)端導(dǎo)出
C:Windowssystem32>exp
doiido/doiido@192.168.100.200:1521/doiido file=d:doiido.dmp tables=boy log=d:doiido.log
導(dǎo)出的兩種方式
傳統(tǒng)路徑:使用SQL語句查詢方式,需要經(jīng)過緩存
直接路徑:使用數(shù)據(jù)塊抽取方式,direct=y
2:IMP導(dǎo)入
1:導(dǎo)入某個(gè)用戶指定的表
$ imp doiido/doiido file=doiido.dmp tables=(doiido,boy)
log=doiido.log
2:導(dǎo)入用戶test所有的對象到doiido
$ imp doiido/doiido file=doiido.dmp fromuser=test touser=doiido log=doiido.log
履行導(dǎo)入的順序
創(chuàng)建表結(jié)構(gòu)
導(dǎo)入表的數(shù)據(jù)
創(chuàng)建相干索引
導(dǎo)入觸發(fā)器
對導(dǎo)入的表啟用完全性束縛
建立所有位圖、函數(shù)和其他索引
imp的時(shí)候如果導(dǎo)入的表已存在
ignore=y ##表示導(dǎo)入的時(shí)候疏忽同名對象,導(dǎo)入的操作是追加
3:其他
(1)導(dǎo)入導(dǎo)出的進(jìn)程可以更換用戶,但是必須有相同的表空間在,這樣導(dǎo)入才能夠成功
(2)導(dǎo)出的時(shí)候會有wainings是正常的,由于有些索引或主外鍵之類的沒有被導(dǎo)出
(3)導(dǎo)入導(dǎo)出的時(shí)候還需要注意字符集的必須是相同或是子集
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈