明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

Oracle Faq(Oracle的字符集問題)

[摘要]1、在建庫時,catproc一定要運行,否則用rman時會出現(xiàn)如下字符集的錯誤:RMAN-00554: initialization of internal recovery manager package failedRMAN-04005: error from target database:...

1、在建庫時,catproc一定要運行,否則用rman時會出現(xiàn)如下字符集的錯誤:
RMAN-00554: initialization of internal recovery manager package failed
RMAN-04005: error from target database: ORA-06553: PLS-213: package STANDARD noe
RMAN-04015: error setting target database character set to ZHS16CGB231280
如果建庫時沒有問題,那么可以Re-run catproc.sql. This will in turn call the dbmsbkrs.sql script which creates the dbms_backup_restore package.

2、中文字符集說明
ZHS16CGB231280 CGB2312-80 16-bit Simplified Chinese MB, ASCII
ZHS16GBK GBK 16-bit Simplified Chinese MB, ASCII, UDC
簡單地說ZHS16GBK是ZHS16CGB231280的超集。
一九九○年中國、日本、韓國共同制定的統(tǒng)一東亞表意文字字符集,即常稱的國標(biāo)擴展碼字符集(GBK)。

3、如何避免中文支持問題
我們的一貫建議是在建庫時就做好規(guī)劃,這樣以后就不會有問題了。
1)create database
character set ZHS16GBK
national character set ZHS16GBK
2)環(huán)境變量:NLS_LANG=american_america.ZHS16GBK
最好export NL2004-10-20_FORMAT='YYYY-MM-DD HH24:MI:SS'指明日期格式;
3)如果建庫時指定了props$中characterset肯定就是ZHSS16GBK了:
NLS_CHARACTERSET ZHS16GBK
NLS_NCHAR_CHARACTERSET ZHS16GBK
如果不是可以使用update改變,但這樣做對于已有數(shù)據(jù)會有影響,甚至?xí)䦟?dǎo)致整個數(shù)據(jù)庫不能用,所以還是在建庫之后就進(jìn)行驗證,一個好的DBA就是能夠盡量避免問題的發(fā)生,而不是等到出了問題再去救火。

如此一來就不會再有字符集和中文支持的問題了。還有問題嗎?和我聯(lián)系:)