Linux下SQLPlus中文乱码处理

1.首先查询数据库字符集

1
2
3
4
5
6
7
SQL> select userenv('language') from dual;
 
USERENV('LANGUAGE')
----------------------------------------------------
AMERICAN_AMERICA.AL32UTF8
 
SQL> exit

从上面得知数据库字符集为AMERICAN_AMERICA.AL32UTF8


2.配置环境变量

设置开机重启自动加载将其放到

/home/oracle/.bash_profile

或/etc/profile中

1
2
echo 'export NLS_LANG="AMERICAN_AMERICA.UTF8"'>>/etc/profile
source /etc/profile

3.再次查询即可正常识别中文


原因分析:

sqlplus乱码与操作系统NLS_LANG变量有关,当数据库字符集与NLS_LANG变量不一致就产生乱码。

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页