- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業(yè)務(wù)經(jīng)營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯(lián)網(wǎng)協(xié)會理事單位
- 安全聯(lián)盟認(rèn)證網(wǎng)站身份V標(biāo)記
- 域名注冊服務(wù)機構(gòu)許可:滇D3-20230001
- 代理域名注冊服務(wù)機構(gòu):新網(wǎng)數(shù)碼
1.Oracle數(shù)據(jù)庫出現(xiàn)亂碼的原因:
操作系統(tǒng)與服務(wù)器一致,但客戶端與服務(wù)器字符集不一致
客戶端與服務(wù)器一致,但操作系統(tǒng)與服務(wù)器不一致
2.解決辦法:
設(shè)置相關(guān)的字符集,保證操作系統(tǒng)、客戶端、數(shù)據(jù)庫服務(wù)器,保證這三者的字符集都相同。
3.針對情況:
設(shè)置客戶端的字符集與服務(wù)器一致,假如服務(wù)器的字符集為:UTF8(建議創(chuàng)建數(shù)據(jù)庫的時候用這個字符集,中英文都能兼容)
1)查看操作系統(tǒng)字符集
# locale LANG=zh_CN.UTF-8 LC_CTYPE="zh_CN.UTF-8" LC_NUMERIC="zh_CN.UTF-8" LC_TIME="zh_CN.UTF-8" LC_COLLATE="zh_CN.UTF-8" LC_MONETARY="zh_CN.UTF-8" LC_MESSAGES="zh_CN.UTF-8" LC_PAPER="zh_CN.UTF-8" LC_NAME="zh_CN.UTF-8" LC_ADDRESS="zh_CN.UTF-8" LC_TELEPHONE="zh_CN.UTF-8" LC_MEASUREMENT="zh_CN.UTF-8" LC_IDENTIFICATION="zh_CN.UTF-8" LC_ALL=
查看默認(rèn)是zh_CN.UTF-8,rhel7配置文件是locale.conf
# vi /etc/locale.conf LANG="zh_CN.UTF-8"
2)查看數(shù)據(jù)庫字符集
$ su - oracle SQL> select userenv('language') from dual; USERENV('LANGUAGE') ---------------------------------------------------- AMERICAN_AMERICA.AL32UTF8
3)編輯linux 的NLS_LANG變量
$ vi .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/.local/bin:$HOME/bin export PATH export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1 export ORACLE_SID=orcl export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib.UTF-8; export LANG #NLS_LANG='SIMPLIFIED CHINESE_CHINA.AL32UTF8'; export NLS_LANG NLS_LANG='AMERICAN_AMERICA.AL32UTF8'; export NLS_LANG
3)oracle用戶下,臨時修改環(huán)境變量為en_US.UTF-8
$ su - oracle $ export.UTF-8 $ env |grep LANG NLS_LANG=AMERICAN_AMERICA.AL32UTF8.UTF-8
注意:客戶端的字符集和oracle 數(shù)據(jù)庫的字符集保持一致。
通過sqlplus驗證:
SQL> select USERNAME,ACCOUNT from AP_INTE_USR; USERNAME ACCOUNT ---------------------- -------------------------- app應(yīng)用 test_app 應(yīng)用 testyin
提交成功!非常感謝您的反饋,我們會繼續(xù)努力做到更好!
這條文檔是否有幫助解決問題?
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP