您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關Oracle中exp和imp數(shù)據(jù)遷移注意事項有哪些的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
一,exp時,os語言環(huán)境和數(shù)據(jù)庫不同時會自動發(fā)生轉(zhuǎn)換.
如果操作系統(tǒng)的字符集小于數(shù)據(jù)庫字符集,就可能出現(xiàn)亂碼現(xiàn)象.imp時,同理,也是有可能出現(xiàn)亂碼的.如果源庫和目標庫字符集是
相同的話,防止exp,imp過程出現(xiàn)字符轉(zhuǎn)換,我們可以在exp,imp動作前,手動設置語音環(huán)境和數(shù)據(jù)庫語言環(huán)境一樣.如數(shù)據(jù)庫語言環(huán)境
為AMERICAN_AMERICA.AL32UTF8,os是windows,使用命令set NLS_LANG=AMERICAN_AMERICA.AL32UTF8;os是linux or unix,使用命令
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8.
二,在遷移schema時,即使不遷移數(shù)據(jù),也易發(fā)生ORA-1659錯誤.
在上述錯誤發(fā)生后,select view,發(fā)現(xiàn)表的大小和源庫表大小是一樣的.而實際,我們只是遷移表結構,并沒有遷移數(shù)據(jù)(rows=n).
查詢表發(fā)現(xiàn)也是沒有遷移數(shù)據(jù)的,但它的存儲空間和源表是一樣的.也就是說它遷移了存儲空間.分析發(fā)現(xiàn),是由于exp時,沒有設置參
數(shù)compress=n所致,由于此參數(shù)默認值為y,那么它會在exp時,將源表所有數(shù)據(jù)壓縮到一個extent,也就是initial extent,而imp時,會
預分配initial extent大小的.因此此種情況下,極易發(fā)生ORA-1659錯誤.
注:另在作有數(shù)據(jù)導出時,如果表大小較大的話,使用此參數(shù)的默認值也極易發(fā)生ORA-1659錯誤.因為假設你的源表大小為100m,在
imp時,需分配initial extent大小為100m,如果此時,用戶所在表空間沒有連續(xù)100m空間,那么就會報此錯誤了.
三,如果導出統(tǒng)計信息,在只導出部分數(shù)據(jù),或不導出數(shù)據(jù)時,導出統(tǒng)計信息會報錯.另如果未導出統(tǒng)計信息,但導入時,需導入統(tǒng)計信息
,那此時,導入后,統(tǒng)計信息會被鎖住,而無法更新統(tǒng)計信息.
此時,我們可使用包dbms_stats.unlock_schema_stats來解鎖.最好的辦法是,在exp,imp時,加入?yún)?shù)statistics=none,不exp,imp
統(tǒng)計信息,在導入完成后,在重新收集統(tǒng)計信息.
四,在使用ftp跨系統(tǒng)cp dmp文件時,一定要注意使用bin模式,來防止imp時,不能open文件,而導入失敗.
五,在作imp數(shù)據(jù)操作時,特別是imp大表時,為了防止發(fā)生ORA-1555錯誤,應設置參數(shù)commit=y,buffer=10000000(根據(jù)實際情況設置),此時,當buffer空間滿時,會自動提交.默認是imp一個表提交一次.
詳例
遷移用戶,但無需遷移數(shù)據(jù),且源庫,目標庫語言環(huán)境都為AMERICAN_AMERICA.AL32UTF8,可如下操作:
導出:
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
exp user/pwd file=export.dmp log=export.log buffer=10000000 grants=n rows=n statistics=none compress=n
導入:
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
imp user/pwd fromuser=user1 touser=user2 rows=n statistics=none file=export.dmp log=export.log
感謝各位的閱讀!關于“Oracle中exp和imp數(shù)據(jù)遷移注意事項有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。