设为首页 收藏本站
查看: 861|回复: 0

[经验分享] RedHat 5.4 Oracle10g Sqlplus、isqlplus、em 中文乱码解决

[复制链接]

尚未签到

发表于 2018-5-12 07:37:28 | 显示全部楼层 |阅读模式
------------第一篇文章----------


安装完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 37017186
Preparing...                ########################################### [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 37017186
Preparing...                ########################################### [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 37017186
Preparing...                ########################################### [100%]
   1:fonts-chinese          ########################################### [100%]
Ok,安装完成,现在重新启动 xfs 字体服务器
[root@localhost filedata]# service xfs reload
Reloading 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.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
[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-chinese
fonts-chinese-3.02-12.el5
3.修改/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"----------(这一条其实可以不用修改,如果你的操作系统本不是中文操作系统;如果是英文操作系统,添加此行之后出现乱码)
之前要确认,数据库的字符集是ZBS16GBK
select * from nls_database_parameters;
字段 NLS_Charset..显示

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-458898-1-1.html 上篇帖子: RedHat/CentOS 最小化安装模式下安装网络等工具 下篇帖子: redhat配置DNS让电脑可以上网
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表