解決Linux下Oracle 10g資料庫em,dbca中文方塊亂碼問題
今天在Linux下裝了Oracle 10g資料庫,裝好後將Linux系統語言切換為中文後,發現Oracle的em(Enterprise Manager)、dbca(database configuration assistant)中文介面、按鈕全為方塊或亂碼,十分讓人頭痛。通過Google,百度尋找原因,經過多次嘗試,終於解決看到了em、dbca介面看到了可愛的中文。
先介紹一下我的系統壞境:
作業系統 |
Red Hat Enterprise Linux AS 5 |
Oracle版本 |
10.1.0.3 (10g) |
$LANG |
zh_CN.UTF-8 |
$ORACLE_HOME |
/opt/oracle/product/10.1.0/Db_1/ |
em,dbca中文方塊亂碼問題具體解決方案:
一、安裝簡體中文字型包fonts-chinese-3.02-9.6.el5:
我們首先得安裝rhel5.0系統DVD中內建的中文字型包fonts-chinese-3.02-9.6.el5.noarch.rpm,這是至關重要的。如果沒有安裝此字型包,簡體中文字型檔/usr/share/fonts/zh_CN/TrueType/zysong.ttf和/usr/share/fonts/chinese/TrueType/zysong.ttf就不存在的,中文顯示就更無從說起了。
二、 設定Linux系統語言壞境:
export LANG=zh_CN.UTF-8
三、 拷貝替換font.properties檔案,執行下面兩條命令:
# cd $ORACLE_HOME/jre/1.4.2/lib/
# cp font.properties.zh_CN.Redhat8.0 font.properties
//注:也可以用font.properties.zh_CN_UTF8.Redhat,font.properties.zh_CN.*替換font.properties。
執行完這兩條命令後,嘗試啟動Java控制台,查看是否解決中文方塊問題:
# ../bin/ControlPanel
如果已經不再是方塊,則跳過第四步,否則繼續按第4步操作。
四、 修改第三步複製替換的font.properties檔案,將檔案中的最後一行:
filename.-misc-zysong18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/share/fonts/zh_CN/TrueType/zysong.ttf
改為
filename.-misc-zysong18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/share/fonts/chinese/TrueType/zysong.ttf
檔案中的最後一行指向的即為中文字型檔,確認檔案是否存在。
五、按三、四步的操作,重新拷貝建立$ORACLE_HOME/jdk/jre/lib/下的字型設定檔案。執行完此步驟後,dbca、netca等基於Java的程式的中文亂碼方塊問題得到解決。
六、清除按鈕gif圖片cache並重啟服務(針的Web介面的管理程式):
searchctl stop
emctl stop dbconsole
isqlplusctl stop
rm -rf $ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/isqlplus/isqlplus/cabo/images/cache/zhs/*.gif
rm -rf $ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs/*.gif
searchctl start
emctl start dbconsole
isqlplusctl start
開啟下面URL進行測試:
Ultra Search URL:
http://yourip:5620/ultrasearch
Ultra Search Administration Tool URL:
http://yourip:5620/ultrasearch/admin
iSQL*Plus URL:
http://yourip:5560/isqlplus
iSQL*Plus DBA URL:
http://yourip:5560/isqlplus/dba
經過以上步驟的操作,徹底解決了Linux下Oracle資料庫em、dbca、netca中文介面、按鈕方塊亂碼問題。