zoukankan      html  css  js  c++  java
  • 回显字符集显示乱码的问题

    有时我们使用SecureCRT软件连接到我们的Oracle目标主机,会发现有些回显信息显示为乱码,非常不方便操作。
    本文将介绍最常见的两种乱码情况解决方法。

    一、系统字符集显示乱码

    二、sqlplus 字符集乱码

    一、系统字符集显示乱码

    系统输入命令回显中文会显示乱码,表现如下: ``` # df -h 鏂囦欢绯荤粺 瀹归噺 宸茬敤 鍙�敤 宸茬敤%% 鎸傝浇鐐 /dev/mapper/vg00-lvroot 9.7G 7.1G 2.1G 78% / ```

    1.1 echo $LANG 查看系统字符集

    ``` $ echo $LANG zh_CN.UTF-8 ```

    1.2 根据系统字符集,CRT设置对应的字符集编码

    如下图所示:`Options -> Session Options -> Terminal -> Appearance -> Character encoding 选择与系统对应的字符集编码。` ![](http://images.cnblogs.com/cnblogs_com/jyzhao/652804/o_SecureCRTSetCharacterEncoding.png) 修改后发现字符集已显示正常,如下: ``` # df -h 文件系统 容量 已用 可用 已用%% 挂载点 /dev/mapper/vg00-lvroot 9.7G 7.1G 2.1G 78% / ``` 到此,已解决系统回显乱码问题。

    二、sqlplus 字符集乱码

    系统乱码解决后,sqlplus登录还有可能会显示乱码,表现如下: ``` $ sqlplus / as sysdba

    SQL*Plus: Release 11.2.0.3.0 Production on Fri Sep 25 07:37:26 2015

    Copyright (c) 1982, 2011, Oracle. All rights reserved.

    ???:
    Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options

    SQL> archive log list
    ??????? ????
    ???? ??
    ???? USE_DB_RECOVERY_FILE_DEST
    ????????? 69111
    ????????? 69114
    ?????? 69114
    SQL>

    <h2 id="2.1">2.1 echo $NLS_LANG 查看设置值</h2>
    

    $ echo $NLS_LANG

    $

    一般是没有设置NLS_LANG变量或者设置的值不正确。
    <h2 id="2.2">2.2 根据系统字符集,设置对应的NLS_LANG变量</h2>
    比如,这里系统字符集为utf8,NLS_LANG可以设置为:
    

    export NLS_LANG=american_america.utf8

    上面设置sqlplus的回显是英文,如果想sqlplus回显为中文,可以设置为:
    

    export NLS_LANG="simplified chinese_china.utf8"

    此时再次登陆sqlplus发现字符集已显示正常:
    

    $ sqlplus / as sysdba

    SQL*Plus: Release 11.2.0.3.0 Production on 星期五 9月 25 07:39:26 2015

    Copyright (c) 1982, 2011, Oracle. All rights reserved.

    连接到:
    Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options

    SQL> archive log list
    数据库日志模式 存档模式
    自动存档 启用
    存档终点 USE_DB_RECOVERY_FILE_DEST
    最早的联机日志序列 69111
    下一个存档日志序列 69114
    当前日志序列 69114
    SQL>

    当然,为方便操作,还可以选择将NLS_LANG追加入用户变量中。
    一般情况下:
    

    bash 对应配置文件 ~/.bash_profile
    csh 对应配置文件 ~/.cshrc

    至此,我们就可以顺畅的操作,不再有字符集乱码的烦恼了。
  • 相关阅读:
    计算几何 val.3
    项目中常用的19条MySQL优化
    九年测试老鸟给测试新人的6条忠告
    敏捷软件测试常见的七个误区
    JEMTER简单的测试计划
    你真的会搭建测试环境吗?
    使用 Fiddler工具模拟post四种请求数据
    性能测试方案及性能测试流程
    Appium的环境搭建和配置
    Python :编写条件分支代码的技巧
  • 原文地址:https://www.cnblogs.com/jyzhao/p/4837368.html
Copyright © 2011-2022 走看看