您的位置:首页 > 数据库 > Oracle

RedHat 5.4 Oracle10g Sqlplus、isqlplus、em 中文乱码解决

2013-01-22 17:35 399 查看
------------第一篇文章----------
安装完linux redhat 5.4,打开浏览器发现显示中文全部成了乱码,原来在安装的时候没有选择安装中文字体支持包,打开系统的镜像,找到中文字体的相关安装包如下:[root@localhost filedata]# rpm -ivh fontconfig-2.4.1-7.el5.i386.rpm warning: fontconfig-2.4.1-7.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186Preparing... ########################################### [100%] package fontconfig-2.4.1-7.el5.i386 is already installed[root@localhost filedata]# rpm -ivh fontconfig-devel-2.4.1-7.el5.i386.rpm warning: fontconfig-devel-2.4.1-7.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186Preparing... ########################################### [100%] package fontconfig-devel-2.4.1-7.el5.i386 is already installed[root@localhost filedata]# rpm -ivh fonts-chinese-3.02-12.el5.noarch.rpm warning: fonts-chinese-3.02-12.el5.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 37017186Preparing... ########################################### [100%] 1:fonts-chinese ########################################### [100%]Ok,安装完成,现在重新启动 xfs 字体服务器[root@localhost filedata]# service xfs reloadReloading xfs: [ OK ]这样中文语言包就安装成功了,现在可以尽情浏览你的中文网页了。

------------第二篇文章----------
今天安装完成Oracle 10g (10.2.0.1)之后,通过http://yoururl:5500/em登陆... 但是,页面上的按钮都是显示"口口"方块...在网上搜索了一下,找到了许多种解决方案。
第一种方案是出现频率最高的所谓快速解决方案,其实也是一种治标不治本的方案,可能有些人采用这种方案解决了问题,但是仍然不知道为什么。详细内容可参见“Oracle10g EM乱码之快速解决”一直没怎么用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.Redhatfont.properties.zh_CN.Redhat2.1font.properties.zh_CN.Sunfont.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.Redhatfont.properties.zh_CN.Redhat2.1font.properties.zh_CN.Sunfont.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[oracle@danaly zhs]$ emctl start dbconsole现在登陆Web页面,EM显示就可以正常显示中文了.
第二种方法解释得更清楚一些,参见“Oracle 10g em 乱码解决方案”装好了Oralce 10g,它的OEM变成Web方式了..通过http://yoururl:5500/em登陆..但是,页面上的按钮都是显示"口口"方块..首先,要解决JRE的中文字体显示问题,Oralce 10g自带JDK1.4.2和JRE 1.4.2, 其字体配置的目录为/opt/oracle/product/10.1.0/Db_1/jdk/jre/lib和/opt/oracle/product/10.1.0/Db_1/jre/1.4.2/lib/把这两个目录中下面的font.properties都改成simsun字体,限于篇幅具体内容不再列出。确认一下中文配置是否成功,执行:/opt/oracle/product/10.1.0/Db_1/jdk/jre/bin/ControlPanel/opt/oracle/product/10.1.0/Db_1/jre/1.4.2/bin/ControlPanel如果弹出的控制台都是中文的,说明中文配置成功..重启em$emctl stop dbconsole$emctl start dbconsole看看效果,哈哈...还是小方块...为什么?因为那个按钮是个图片,而那个图是在第一次访问时动态生成的,生成的时候用的是jre的font.properties里面指定的中文字体,所以要把生成的图片删掉,下次访问就重新生成了。具体的位置:/opt/oracle/product/10.1.0/Db_1/oc4j/j2ee/oc4j_applications/applications/em/em/cabo/images/cache/zhs把zhs这个目录删除,下次访问就重新生成了。
最后一种方法是修改客户端默认显示的方法,也是我最后所采用的方法,参见“用IE登录Linux服务器上的Oracle10g em出现的乱码的解决”在Linux(Unix)环境下成功安装了Oracle 10g,从windows下用IE浏览器登录 10g 的em, 按钮是"口口"这样的方框.解决办法其实严格的说来,这是Java的问题.JDK Swing采用TrueType 字体作为按钮的显示字体,如果你的JDK 找不到中文字体用来显示,你看到的一些按钮就变成小方块的样子. 一般情况下, 我们只需要修改相应的 font.properties 就可以达到目的.提供了一个类似的解决办法, 但是不幸的是, 目前的 Oracle 10g毛病多多, 很不容易正确的设置, 而且这个办法也很麻烦。不知道大家有没有注意到, 10g EM 显示的中文翻译很是糟糕, "up" "down" 动不动就翻译成"向上""向下",让人哭笑不得. 很多朋友都说, 干脆给显示英文算了, 可是怎么显示呢?好了,现在我们有一种办法很容易的间接的解决这个问题:打开你的IE浏览器, 选择'工具"-->"Internet选项"-->"常规", 选择 "语言", 默认只有 "中文", 选择 " 添加 ", 加入 "英语(美国)" , 调整顺序, 把“英语(美国)”移动到最上面。OK ,确定.启动em:$emctl start dbconsole然后用IE浏览你的相应的地址: http://yoururl:5500/em看到了吗?英文界面出来了. 如果以上办法还是没法解决,就可以是操作系统字符集的问题,可以参照后面第三篇

-------------第三篇文章----------转自linux公社 【问题描述】1.Linux系统中含有中文内容的文件名显示乱码;2.使用vi编辑器查看中文内容为乱码;3.sqlplus进入到数据库中查看中文内容为乱码;4.putty中中文内容显示为乱码。【问题原因】1.没有安装中文支持的包;2.相应的环境变量需要做相应的调整【问题处理】1.确认系统版本# cat /etc/RedHat-release

Red Hat Enterprise Linux Server release 5.4 (Tikanga)2.查看linux系统中是否已安装fonts-chinese中文语言支持包,如果没有安装,需要下载相应版本的rpm包进行安装# rpm -aq | grep fonts-chinesefonts-chinese-3.02-12.el53.修改/etc/sysconfig/i18n文件为以下内容LANG="zh_CN.GB18030"LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"SYSFONT="lata0-sun16"SYSFONTACM="8859-15"#export LC_ALL="zh_CN.GB18030"export部分可加可不加4.在/etc/profile尾部添加如下内容#export LC_ALL="zh_CN.GB18030"5.注销或者reboot,Linux系统中含有中文内容的文件名显示乱码问题和使用vi编辑器查看中文内容为乱码的问题得到解决-----6.在oracle用户的.bash_profile中添加如下内容,解决sqlplus进入到数据库中查看中文内容为乱码问题export NLS_LANG=“SIMPLIFIED CHINESE_CHINA.ZHS16GBK"----------(这一条其实可以不用修改,如果你的操作系统本不是中文操作系统;如果是英文操作系统,添加此行之后出现乱码)之前要确认,数据库的字符集是ZBS16GBKselect * from nls_database_parameters;字段 NLS_Charset..显示

本文出自 “旅游人生” 博客,谢绝转载!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: