=Native Language Support本地语言支持 NLS

ORACLE11g-ORA-12705: Cannot access NLS data files or invalid environment specified

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

export ORA_NLS10=/u01/app/Oracle/product/11.2.0/dbhome_1/nls/data

作系统环境变量针对语言项设置有几个,我经常设置的是这两个LANG和NLS_LANG。

LANG是针对Linux系统的语言、地区、字符集的设置,对linux下的应用程序有效,如date;

NLS_LANG是针对Oracle语言、地区、字符集的设置,对oracle中的工具有效。

例如

  1. export LANG=zh_CN.GB2312
  2. export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
  1. $export LANG=zh_CN.GB2312
  2. $date
  3. 2012年 11月 27日 星期二 16:20:35 CST

显示是中文界面。

  1. $export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
  2. $sqlplus / as sysdba
  3. SQL*Plus: Release 10.2.0.4.0 - Production on Tue Nov 27 16:19:03 2012
  4. Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.
  5. Connected to:
  6. Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
  7. With the Partitioning, Real Application Clusters, OLAP, Data Mining
  8. and Real Application Testing options
  9. SQL> select sysdate from dual;
  10. SYSDATE
  11. ------------
  12. 27-NOV-12

显示的是英文环境,但只对ORACLE程序生效。

Linux系统中关于环境变量的LANG设置主要有下列项目:

  1. [root@blliu tmp]# locale
  2. LANG=zh_CN.gb2312
  3. LC_CTYPE="zh_CN.gb2312"
  4. LC_NUMERIC="zh_CN.gb2312"
  5. LC_TIME="zh_CN.gb2312"
  6. LC_COLLATE="zh_CN.gb2312"
  7. LC_MONETARY="zh_CN.gb2312"
  8. LC_MESSAGES="zh_CN.gb2312"
  9. LC_PAPER="zh_CN.gb2312"
  10. LC_NAME="zh_CN.gb2312"
  11. LC_ADDRESS="zh_CN.gb2312"
  12. LC_TELEPHONE="zh_CN.gb2312"
  13. LC_MEASUREMENT="zh_CN.gb2312"
  14. LC_IDENTIFICATION="zh_CN.gb2312"
  15. LC_ALL=

这里LC_ALL没有设置,如果它设置了,上面所有的设置都无效的,系统会读取LC_ALL。

locale -a 查看本地字符集

locale -m 查看所有支持的字符集

在Oracle数据库中查NLS_LANG设置:

    1. SQL> SELECT *
    2. 2    FROM DATABASE_PROPERTIES
    3. 3   WHERE PROPERTY_NAME IN
    4. 4         ('NLS_LANGUAGE', 'NLS_TERRITORY', 'NLS_CHARACTERSET');
    5. PROPERTY_NAME                  PROPERTY_VALUE                 DESCRIPTION
    6. ------------------------------ ------------------------------ --------------------
    7. NLS_LANGUAGE                   AMERICAN                       Language
    8. NLS_TERRITORY                  AMERICA                        Territory

操作系统环境变量LANG和NLS_LANG的关系的更多相关文章

  1. 数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID)

    数据库名(DB_NAME).实例名(Instance_name).以及操作系统环境变量(ORACLE_SID) 在ORACLE7.8数据库中只有数据库名(db_name)和数据库实例名(instanc ...

  2. .NET Core程序中,如何获取和设置操作系统环境变量的值

    有时候我们在.NET Core程序中需要获取和设置操作系统环境变量的值.本文演示如何使用Environment.GetEnvironmentVariable和Environment.SetEnviro ...

  3. python操作系统环境变量

    获取整个系统变量的方法是os.environ,这是一个os的class类型,使用的时候可以转换为字典类型 environ_value = dict(os.environ) 这样就可以看所有的key,e ...

  4. NSIS操作系统环境变量

    手头有个项目需要修改PATH变量 需要!include "EnvVarUpdate.nsh" 以下是NSIS脚本代码 ; Script generated by the HM NI ...

  5. SpringBoot系列——利用系统环境变量与配置文件的分支选择实现“智能部署”

    前言 通过之前的博客:SpringBoot系列——jar包与war包的部署,我们已经知道了如果实现项目的简单部署,但项目部署的时候最烦的是什么?修改成发布环境对应的配置!数据库连接地址.Eureka注 ...

  6. Linux系统环境变量的四个配置文件的关系

    Linux系统环境变量配置有四个文件分别是: /etc/environment,/etc/profile,/etc/bash.bashrc,~/.bashrc 各配置文件意义 /etc/environ ...

  7. linux 系统环境变量配置

    使用Ubuntu 进行开发绕不开的就是环境变量的配置,由于Linux系统严格的权限管理,造成Ubuntu系统有多个环境变量配置文件,如果不了解其调用顺序,很有可能遇到配置了环境变量,而没有其作用的问题 ...

  8. Pyqt QListWidget 展示系统环境变量

    今天学习了下Pyqt的 QListWidget 控件 我们先看下这个图片 这张图片就是典型的listWidget效果,我们今天就仿这样布局新建个ListWidget 在网上找了个关于QListWidg ...

  9. bat批处理设置Java JDK系统环境变量文件

    自己修改第3行的Java安装目录就可以设置JAVA_HOME, classPath,追加到PATH的最前面 JAVA_HOME=C:\Program Files\Java\jdk1.6.0_10 cl ...

随机推荐

  1. 《Linux内核设计与实现》第5章读书整理

                                 <第五章 系统调用>笔记 5.1 与内核通信 系统调用在用户空间和硬件设备之间提供了一个中间层. 中间层的作用: 为用户空间提供一 ...

  2. 20135220谈愈敏Blog2_操作系统是如何工作的

    操作系统是如何工作的 谈愈敏 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 计 ...

  3. 冲刺Two之站立会议7

    今天我们把软件的基本功能完成之后,又对所有的界面进行了统一规范化并进行了相应的优化.

  4. Activiti源码:ActivitiEventSupport类中eventListeners的设计

    ActivitiEventSupport类成员eventListeners是使用CopyOnWriteArrayList实现的. public ActivitiEventSupport() { eve ...

  5. Activiti源码学习:ExecutionListener与TaskListener的区别

    /** Callback interface to be notified of execution events like starting a process instance, * ending ...

  6. 学习Java并发的课程

    https://www.javaspecialists.eu/courses/concurrency.jsp http://www.jconcurrent.com/ javaConcurrentAni ...

  7. bash基本功能 -命令的别名和快捷键

    命令的别名 == 人的小名 如何查看和设定别名 alias 查看系统中的所有别名 ls --color=auto alias ll = 'ls - l --color=auto' touch abc ...

  8. c++ std::function

    std::function 是一个模板类,用于封装各种类似于函数这样的对象,例如普通函数,仿函数,匿名函数等等.其强大的多态能力,让其使用只依赖于调用特征.在程序的升级中,可以实现一个调用表,以兼容新 ...

  9. selenium_UI自动化——篇1(基础)

    元素定位的几种方式: (1)driver.find_element_by_id("idname") (2)driver.find_element_by_name("nam ...

  10. [Swerc2014 C]Golf Bot

    题意:给你N个数字,每次利用这N个数字中最多两个数字进行加法运算,来得到目标中的M个数字. Solution: 我们先来看看多项式乘法:\(A(x)=\sum_{i=0}^{n-1}a_ix^i\), ...