当前位置: 首页 > news >正文

Oracle 19c 在 Linux 环境下 SQL*Plus 登录显示 ??? 乱码处理:从 ??? 到 Connected to 的一次排查处理_2026-05-14

一、问题现象

Oracle 19c 使用 SQL*Plus 登录时,连接可以成功,但提示信息显示乱码:

sqlplus / as sysdba

异常显示类似:

???: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.25.0.0.0

数据库可以正常连接,说明并不是数据库无法启动或连接失败。


二、环境信息

操作系统:

Oracle Linux Server 8.10

数据库版本:

Oracle Database 19c Version 19.25.0.0.0

数据库字符集:

select parameter, value from nls_database_parameters where parameter in ('NLS_CHARACTERSET','NLS_NCHAR_CHARACTERSET');

结果:

NLS_CHARACTERSET AL32UTF8 NLS_NCHAR_CHARACTERSET AL16UTF16

说明数据库字符集本身正常。


三、原因分析

检查系统 locale:

locale

发现之前有报错:

Cannot set LC_CTYPE to default locale Cannot set LC_MESSAGES to default locale Cannot set LC_ALL to default locale

再检查:

locale -a | grep -i en_US

一开始没有输出,说明系统虽然配置了:

LANG=en_US.UTF-8

但实际上没有安装对应的英文 UTF-8 语言包。

同时检查 Oracle 客户端字符集:

echo $NLS_LANG

结果为空。

所以根因是:

1. 操作系统缺少 en_US.UTF-8 locale 2. oracle 用户未配置 NLS_LANG

四、处理步骤

1. root 用户安装英文语言包

dnf install -y glibc-langpack-en

检查:

locale -a | grep -i en_US

正常应看到:

en_US.utf8

2. 设置系统默认 locale

localectl set-locale LANG=en_US.UTF-8

确认:

cat /etc/locale.conf

结果:

LANG=en_US.UTF-8

3. 配置 oracle 用户 NLS_LANG

切换到 oracle 用户:

su - oracle

临时设置验证:

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 sqlplus / as sysdba

如果显示:

Connected to: Oracle Database 19c Enterprise Edition ...

说明问题解决。


五、永久生效配置

oracle用户下写入环境变量:

cat >> ~/.bash_profile <<'EOF' # Oracle SQL*Plus client charset export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 EOF source ~/.bash_profile

验证:

echo $LANG echo $NLS_LANG

期望结果:

en_US.UTF-8 AMERICAN_AMERICA.AL32UTF8


六、总结

本次 SQL*Plus 乱码不是数据库字符集问题,而是客户端环境问题。

最终配置如下:

系统层:LANG=en_US.UTF-8 客户端层:NLS_LANG=AMERICAN_AMERICA.AL32UTF8 数据库层:NLS_CHARACTERSET=AL32UTF8

处理这类问题时,优先检查localeLANGNLS_LANG,不要一上来就怀疑数据库字符集。数据库字符集是“大动脉”,环境变量只是“衣服扣子”,别为了扣子动手术。

http://www.jsqmd.com/news/819054/

相关文章:

  • Adafruit 3.5寸TFT触摸屏驱动指南:SPI与8位并行模式详解
  • 抠图opencv有现成的开源DNN库
  • 高密度LED幕墙系统实战:从Fadecandy硬件选型到Processing视觉开发
  • 广东直流稳压电源技术选型:电源逆变器、直流稳压电源厂家、直流线性电源、程控直流电源、稳压电源厂家、线性直流电源选择指南 - 优质品牌商家
  • 深入浅出arm7架构下大模型API调用环境搭建与配置指南
  • 使用gptrules框架为AI助手构建可控行为规则系统
  • ESP32-C6物联网开发实战:从WiFi连接到Adafruit IO双向通信
  • 【独家首发】Claude 3 Opus内存占用暴增模型:通过profiling火焰图定位其KV Cache膨胀根源并实现3.7倍推理加速
  • 2026年至今,成都成人高考精讲班深度**:新概念外语培训学校为何领跑? - 2026年企业推荐榜
  • HS2-HF Patch终极解决方案:200+插件整合,一键优化游戏体验
  • 龙泉驿区卫生间厕所翻新技术拆解:武侯区公寓装修、武侯区出租房装修改造、武侯区卫生间厕所翻新改造、武侯区厨房翻新改造选择指南 - 优质品牌商家
  • 主动自组装与原位极化技术制备高性能压电生物薄膜
  • SAR成像技术与TI 66AK2L06 SoC的优化实现
  • 如何在Windows上安装安卓应用?APK安装器完整指南
  • ARM调试架构中DBGCLAIMCLR寄存器详解
  • 从SDR到微控制器:AdaBox 007硬件安全与无线电探测实战指南
  • 只开启电脑商城功能,能否使用分销功能?吗?一文搞懂(附详细解答)
  • NotebookLM企业许可陷阱全解析,合同里没写的5个自动续费条款正在吞噬你的IT预算
  • 2000-2024年国家级大数据试验区A股数据 多期DID模型+stata代码
  • ESP32-C6物联网开发实战:从I2C扫描到WipperSnapper无代码部署
  • 做一个有用的图片功能----把自己P到不同旅游景点---不做----因为AI已经能做的很好,而且大家都知道
  • 2026中型牛屠宰设备选型指南:牛羊屠宰流水线/牛羊屠宰设备/猪屠宰流水线/猪屠宰设备/肉牛屠宰流水线/宰牛流水线厂家/选择指南 - 优质品牌商家
  • 2026年兰州装修设计质量排行:兰州本地装修公司、兰州装修公司、兰州装修工作室、兰州装修设计公司、兰州装修设计工作室选择指南 - 优质品牌商家
  • 基于RAG与LangChain的智能PDF构建器:从文档理解到自动化生成
  • 从零构建现代软件开发全链路工程实践体系
  • 3步破解音乐枷锁:Unlock Music音频解密工具的完全自由指南
  • 云计算与虚拟化数据存储网络管理工具解析
  • Sora 2正式版能力边界全测绘(官方未公开的8项限制级参数首次披露)
  • 做仪器设备品质岗这么多年,这家串口屏真的让我“真香“了!
  • 别再只用MD5了!聊聊SHA-1、SHA-256这些哈希函数到底该怎么选?