一直沒怎麼用10g的EM工具,今天打開來看看,發現也有相傳已久的亂碼問題.網上也流傳著N種解決方案,仔細看一下,其實這個問題很好解決.
如果安裝時,我們系統環境變量設置的是中文環境,那麼就不會有這個問題.這個問題根本原因在於安裝時,JDK/JRE字符集的自動選擇.
在 $Oracle_HOME/jdk/jre/lib 和 $Oracle_HOME/jre/1.4.2/lib/ 目錄下都有多種字符集字體配置文件:
[oracle@danaly ~]$ cd $Oracle_HOME/jdk/jre/lib
[Oracle@danaly lib]$ ls font*zh_CN*
font.properties.zh_CN.Redhat font.propertIEs.zh_CN.Redhat2.1
font.properties.zh_CN.Sun font.propertIEs.zh_CN_UTF8.Sun
[oracle@danaly lib]$ cd $Oracle_HOME/jre/1.4.2/lib/
[Oracle@danaly lib]$ ls font*zh_CN*
font.properties.zh_CN.Redhat font.propertIEs.zh_CN.Redhat2.1
font.properties.zh_CN.Sun font.propertIEs.zh_CN_UTF8.Sun
我們只要用合適的中文字符集文件替換缺省文件即可,我選擇使用font.propertIEs.zh_CN.Redhat來替換缺省字體定義文件:
[Oracle@danaly lib]$ cp font.properties.zh_CN.Redhat font.propertIEs
替換之後需要清理一下Cache,重啟EM即可.
Cache路徑通常位於:
$Oracle_HOME/oc4j/J2EE/oc4j_applications/applications/em/em/cabo/images/cache/zhs
清除所有gif文件即可.然後重新啟動EM:
[Oracle@danaly zhs]$ emctl stop dbconsole
TZ set to PRC
Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved.
http://danaly.hurrray.com.cn:1158/em/console/aboutApplication
Stopping Oracle Enterprise Manager 10g Database Control ...
... Stopped.
[Oracle@danaly zhs]$ emctl start dbconsole
TZ set to PRC
Oracle Enterprise Manager 10g Database Control Release 10.2.0.1.0
Copyright (c) 1996, 2005 Oracle Corporation. All rights reserved.
http://danaly.hurrray.com.cn:1158/em/console/aboutApplication
Starting Oracle Enterprise Manager 10g Database Control .............. started.
------------------------------------------------------------------
Logs are generated in directory
/opt/Oracle/product/10.2.0/danaly.hurrray.com.cn_danaly/sysman/log
現在登陸Web頁面,EM顯示就可以正常顯示中文了.