今天安装数据库后,登陆em管理器http://127.0.0.1:1158/em时发现按钮全部为方框
解决办法如下:
在oracle用户下用刚才新安装的中文字符集来替换默认字符集(安装之前要停止EM和isqlplus)
su - oracle
emctl stop dbconsole;
isqlplusctl stop;
1、改变$ORACLE_HOME/jdk目录下的jre的默认字体
$ cd $ORACLE_HOME/jdk/jre/lib/
$ ls font*zh_CN*
其中,font.properties是默认使用的字体。还可以看到font.properties.zh_CN.Redhat和其它的字体。
$ cp font.properties font.properties.bak
$ cp font.properties.zh_CN.Redhat font.properties
2、改变$ORACLE_HOME/jre下的默认字体
使用上面同样的方法来操作。
$ cd $ORACLE_HOME/jre/1.4.2/lib/
$ ls font*zh_CN*
$ cp font.properties font.properties.bak
$ cp font.properties.zh_CN.Redhat font.properties
3、删除Cache下的gif文件
em里面会用到这些图片:
$ cd $ORACLE_HOME/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs/
$ ls *.gif
$ rm *.gif
※ 注意不要搞错目录,修改的是中文环境的。
4、重新启动EM和isqlplus服务
$ emctl start dbconsole;
$ isqlplusctl start;
进入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
经查看该路径指向的字体文件不存在,使用机器另外的中文字体代替
/usr/share/fonts/chinese/TrueType/ukai.ttf文件
修改$ORACLE_HOME/jre/1.4.2/lib/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/ukai.ttf
重启em服务后,em界面显示正常