1、在建庫時,catproc一定要運行,否則用rman時會出現如下字符集的錯誤:
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的超集。
一九九○年中國、日本、韓國共同制定的統一東亞表意文字字符集,即常稱的國標擴展碼字符集(GBK)。
3、如何避免中文支持問題
我們的一貫建議是在建庫時就做好規劃,這樣以後就不會有問題了。
1)create database
character set ZHS16GBK
national character set ZHS16GBK
2)環境變量: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改變,但這樣做對於已有數據會有影響,甚至會導致整個數據庫不能用,所以還是在建庫之後就進行驗證,一個好的DBA就是能夠盡量避免問題的發生,而不是等到出了問題再去救火。
如此一來就不會再有字符集和中文支持的問題了。還有問題嗎?和我聯系:)