千家信息网

linux安装Oracle中文乱码问题汇总

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,解决oracle中文显示乱码有三层地方需要调整或者修改第一层:操作系统层1.首先查看linux是否有安装中文字符集,locale -a2.设置用户的中文字符集查看到linux安装了中文字符集,那么or
千家信息网最后更新 2026年11月01日linux安装Oracle中文乱码问题汇总

解决oracle中文显示乱码有三层地方需要调整或者修改

第一层:操作系统层

1.首先查看linux是否有安装中文字符集,

locale -a

2.设置用户的中文字符集

查看到linux安装了中文字符集,那么oracle用户下面要设置中文字符集

vi /etc/locale.conf # centos7是这个配置文件,有的linux是这个配置文件/etc/sysconfig/i18nLANG="zh_CN.UTF-8"

上面的那种方法设置完后,系统所有用户的字符集都是UTF-8。也可以改带个用户的字符集,就是在用户下的环境变量配置文件里面.bashrc里面直接

export LANG="zh_CN.UTF-8"

第二层:数据库层

在数据库里面查询数据库和实例的字符集

select * from nls_database_parameters;select * from nls_instance_parameters;

可以看到数据库的字符集是ZHS16GBK,ok;要保持服务端和客户端的字符集一致

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

这样之后,那我们打开sqlplus 查询中文,一般就能正常显示了,如果还是乱码,那就新insert一个中文看看,因为修改之前的字符编码跟修改之后的不一致,比如插进去的时候是UTF8解析的,现在改为gbk那么解析就是乱码咯。(sqlplus能正常显示中文之后,我们离胜利更近了一步)。

第三层:plsql层(windows层)

有的人碰到,sqlplus能正常显示中文,但是自己windows里面安装的plsql查询中文就是乱码。(问题就在这里了,我们要解开中文乱码的面纱了)

我们要理解 ,导致中文乱码的原因是什么?是客户端和服务端的中文字符集不一致导致的,这个很好理解两个人说话要用同一种语言(字符集),你说广东话我说闽南语那肯定就很乱咯(乱码),因为解析出错嘛(服务端或者客户端都会解析出错)。

所以,第二层里面在环境变量里面设置

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

就是设置的客户端的字符集,跟数据库保持了一致。那我们windows plsql 也是客户端嘛,所以也要设置NLS_LANG这个环境变量。不罗嗦,上图。

只要是 ZHS16GBK就行了,美国还是中国的这个无所谓。

如上三层,oracle乱码字符集的问题基本就解决了,还有就是这次我示例里面oracle数据库里面的字符集是ZHS16GBK,有的人安装的时候设置的是UTF8的,那么客户端就要设置成UTF8的。并且oracle数据库的字符集是可以修改的,这个修改方法可以去google。

字符 字符集 中文 乱码 数据 客户 数据库 就是 用户 一致 客户端 变量 文件 环境 端的 服务 查询 配置 问题 二层 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网加科技 百单网互联网科技有限公司 广州万易互联网科技有限公司 互联网科技财经 美国互联网科技巨头监管 互联网金融 金融科技 深圳期待互联网科技 佩信高科技互联网 宁波青枫互联网科技有限公司 玉溪互联网科技怎么选 卓翼科技产业互联网合作 每天都有哪些好的互联网科技 21世纪互联网科技成就 九思连强互联网电子科技有限公司 互联网公司属于科技吗 北京军民互联网科技公司 马化腾互联网科技教学 安徽零酒互联网科技有限公司 恒生科技指数 中概互联网 杭州科技互联网公司有哪些 互联网通讯科技 互联网科技公司税收优惠 杭州互联网科技公司 银优互联网科技有限公司 科技赋能互联网健康 互联网之后的科技是什么 北京大学互联网科技怎么样 新兴科技互联网创新大赛颁奖典礼 郑州欣桑互联网科技有限公司 易企秀互联网科技是做什么的
0