eygle.com   eygle.com
eygle.com eygle
eygle.com  
 

« Julia and Eygle | Blog首页 | Google中文桌面第3版Beta发布 »

Oracle10g EM乱码之快速解决
modb.pro

一直没怎么用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显示就可以正常显示中文了.

注意:如果经过以上处理仍然不能正确显示中文,请参考以下说明:

打开刚替换好的font.properties,或者查看原有的中文字体文件:

[oracle@smsdbrac1 lib]$ tail -2 font.properties.zh_CN.Redhat
filename.-misc-zysong18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/share/fonts/zh_CN/TrueType/zysong.ttf

注意其中包含了filename指向中文字体文件,请确认该文件在你的服务器上是否存在,如果不存在,改换一个存在的中文字体文件即可,也可以自行下载安装新的字体文件:

[oracle@smsdbrac1 lib]$ ls -al /usr/share/fonts/zh_CN/TrueType/zysong.ttf
-rw-r--r--  1 root root 9249332 Mar 29  2002 /usr/share/fonts/zh_CN/TrueType/zysong.ttf

这个问题在Redhat中,被作为Bug在后续版本中被修正:

Bug 445297  - Add fonts-chinese-zysong package for zysong font from fonts-chinese. 

https://bugzilla.redhat.com/show_bug.cgi?id=445297


zysong.ttf字体下载

供参考!


历史上的今天...
    >> 2019-03-23文章:
    >> 2010-03-23文章:
    >> 2008-03-23文章:
           决战顺义之边-CS真人对决
    >> 2007-03-23文章:

By eygle on 2006-03-23 15:19 | Comments (12) | Oracle12c/11g | 716 |

12 Comments

大虾的方案确实不错,已完美解决EM乱码问题,但不知isqlplus下的乱麻如何解决?请大虾指教!!!

[oracle@danaly lib]$ cp font.properties.zh_CN.Redhat font.properties
不明白 你是拷贝哪个目录下的?
cd $ORACLE_HOME/jdk/jre/lib

cd $ORACLE_HOME/jre/1.4.2/lib/

cd $ORACLE_HOME/jdk/jre/lib

cd $ORACLE_HOME/jre/1.4.2/lib/
这两个目录下都要执行CP
$ cp font.properties.zh_CN.Redhat font.properties

试过您给出的方法,除了dbconsole在用emctl stop dbconsole时出现
[oracle@localhost bin]$ ./emctl start dbconsol
TZ set to PRC
EM Configuration issue. /u01/app/oracle/OraHome_1/localhost.localdomain_V410237D not found.
[oracle@localhost bin]$ ./emctl start dbconsole
TZ set to PRC
OC4J Configuration issue. /u01/app/oracle/OraHome_1/oc4j/j2ee/OC4J_DBConsole_localhost.localdomain_V410237D not found.
这里实际有的文件夹比提示的少最后一个字母"D",我把文件夹改成带D之后,提示出错的位置变成了下一个位置,也是带"D"

只好用ecma -r方式重启dbconsole.
两个位置的font.properties 我都用font.properties.zh_CN.Redhat替换
缓存中的文件我也已清除,但是一访问,还是获得乱码的图片.gif

实现不了啊,怎么回事~~~

OEM还是英文的~~

英文的和你的浏览器语言设置有关!

我安装linux没有没有选择中文支持。
[root@rac lib]# tail font.properties
fontset.dialoginput.plain=\
-b&h-luxi mono-medium-r-normal--*-%d-*-*-m-*-iso8859-1,\
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0

fontset.default=\
-b&h-luxi sans-medium-r-normal--*-%d-*-*-p-*-iso8859-1,\
-isas-song ti-medium-r-normal--*-%d-*-*-c-*-gb2312.1980-0

filename.-misc-zysong18030-medium-r-normal--*-%d-*-*-c-*-iso10646-1=/usr/share/fonts/zh_CN/TrueType/zysong.ttf

[root@rac lib]#
[root@rac fonts]# pwd
/usr/share/fonts
[root@rac fonts]# ls --没有zh_CN
重新安装中文语言包
[root@rac fonts]# rpm -qpl /opt/fonts-chinese-3.02-9.6.el5.noarch.rpm
warning: /opt/fonts-chinese-3.02-9.6.el5.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
/etc/ghostscript
/etc/ghostscript/CIDFnmap.zh_CN
/etc/ghostscript/CIDFnmap.zh_TW
/etc/ghostscript/FAPIcidfmap.zh_CN
/etc/ghostscript/FAPIcidfmap.zh_TW
/etc/ghostscript/cidfmap.zh_CN
/etc/ghostscript/cidfmap.zh_TW
/usr/share/doc/fonts-chinese-3.02
/usr/share/doc/fonts-chinese-3.02/doc
/usr/share/doc/fonts-chinese-3.02/doc/arphicpl-big5.txt
/usr/share/doc/fonts-chinese-3.02/doc/arphicpl-gb.txt
/usr/share/doc/fonts-chinese-3.02/doc/arphicpl.txt
/usr/share/doc/fonts-chinese-3.02/doc/release.txt
/usr/share/doc/fonts-chinese-3.02/doc/zhongyi-license.txt
/usr/share/fonts/chinese
/usr/share/fonts/chinese/TrueType
/usr/share/fonts/chinese/TrueType/ukai.ttf
/usr/share/fonts/chinese/TrueType/uming.ttf
/usr/share/fonts/chinese/TrueType/zysong.ttf
/usr/share/fonts/chinese/misc
/usr/share/fonts/chinese/misc/fonts.alias
/usr/share/fonts/chinese/misc/taipei16.pcf.gz
/usr/share/fonts/chinese/misc/taipei20.pcf.gz
/usr/share/fonts/chinese/misc/taipei24.pcf.gz
/usr/share/fonts/chinese/misc/vga12x24.pcf.gz
/usr/share/fonts/zh_CN
/usr/share/fonts/zh_CN/TrueType
/usr/share/fonts/zh_TW
/usr/share/fonts/zh_TW/TrueType
[root@rac fonts]# rpm -ivh /opt/fonts-chinese-3.02-9.6.el5.noarch.rpm
warning: /opt/fonts-chinese-3.02-9.6.el5.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100%]
1:fonts-chinese ########################################### [100%]
[root@rac fonts]#
[oracle@rac 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://rac:1158/em/console/aboutApplication
Stopping Oracle Enterprise Manager 10g Database Control ...
... Stopped.
[oracle@rac 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://rac:1158/em/console/aboutApplication
Starting Oracle Enterprise Manager 10g Database Control ....

结果还是乱码
没有语言了

缓存每次都是清除了的,把机器重启也不行。。。

解决了.多谢!!我把我windows XP机器上的字符拷过来,把文件夹地址一改,果然成攻.

哎,终于解决了。太谢谢你了!

哎,终于解决了。太谢谢你了!


CopyRight © 2004~2020 云和恩墨,成就未来!, All rights reserved.
数据恢复·紧急救援·性能优化 云和恩墨 24x7 热线电话:400-600-8755 业务咨询:010-59007017-7040 or 7037 业务合作: marketing@enmotech.com