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变量不一致就产生乱码。

猜你喜欢

转载自blog.csdn.net/fox_wayen/article/details/79951234