【每日一记6】第21天 快速解决linux上oracle安装乱码问题
  

dan 1667

{{ttag.title}}
在oracle用户下执行:export LC_ALL=en_US
建议oracle11g及更高版本的客户端和服务器安装使用al32utf8编码。

强烈要求os客户端、NLS_LANG、oracle数据库字符集都设置成统一的。

另外如果使用em,也要注意浏览器的字符集是否一致。

查看数据库字符集
select * fromV$NLS_PARAMETERS;
注意事项:在使用exp imp的时候,NLS_LANG参数的字符集设置一定要和oracle数据库的字符集一样,否则就会出现字符转换现象。就会导入数据时,报列的长度不够,导出时报 ORA-00091等问题。

客户端指的是:
比如你用的是pl/sql登录的,那么客户端就是pl/sql,而NLS_LANG就是你在本机环境变量里设置的值。如果你要crt或者xshell登录的,那么客户端就是crt或者xshell,而NLS_LANG就是linux操作系统里的值,如果没有,就需要手动指定,所以,可以将其加入到.bash_profile里。
所以至于我们的环境变量NLS_LANG设置成exportNLS_LANG=AMERICAN_AMERICA.ZHS16GBK还是exportNLS_LANG=AMERICAN_AMERICA.AL32UTF8都无所谓,只要保证crt或者xshell的语言设置与其一样就行。
如果linux里当前会话设置成ZHS16GBK,那么crt和xshell语言选择默认
如果linux里当前会话设置成AL32UTF8,那么crt和xshell语言选择UTF-8
由此设置步骤可得知此设置不仅仅是针对PLSQL的,所有在客服机上连接ORACLE时显示的中文为?时都必须通过这个方法设置其字符集,使环境变量NLS_LANG与客户端上的一致方可正确显示中文内容。
检测字符集是否设置正确

先设置NLS_LANG环境变量

Linux临时设置当前会话export NLS_LANG=

Windows设置右键电脑设置或者临时设置set NLS_LANG=

打赏鼓励作者,期待更多好文!

打赏
暂无人打赏

发表新帖
热门标签
全部标签>
每日一问
新版本体验
纪元平台
GIF动图学习
功能体验
产品连连看
安装部署配置
标准化排查
高手请过招
社区新周刊
安全效果
测试报告
【 社区to talk】
每周精选
信服课堂视频
答题自测
技术笔记
西北区每日一问
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
日志审计
问题分析处理
流量管理
每日一记
运维工具
用户认证
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
排障笔记本
产品预警公告
玩转零信任
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
2023技术争霸赛专题
卧龙计划
华北区拉练
天逸直播
以战代练
秒懂零信任
技术晨报
平台使用
技术盲盒
山东区技术晨报
文档捉虫
齐鲁TV
华北区交付直播
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
排障那些事
升级&主动服务
高频问题集锦
POC测试案例
全能先锋系列
云化安全能力
专家说
热门活动
产品动态
行业实践
产品解析
关键解决方案

本版达人

feeling

本周分享达人

新手29676...

本周提问达人