ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Oracle安装过程对数据库级语言设置的影响

Oracle安装过程对数据库级语言设置的影响

原创 Linux操作系统 作者:yangtingkun 时间:2009-02-24 23:21:34 0 删除 编辑

今天一个朋友问到这个问题,发现不同的建库方式对数据库级参数的影响是不同的。

 

 

语言的设置分为3个级别:数据库级、实例级和会话级。

数据库级是在数据库创建时确定的,实例级根据数据库启动时初始化参数来确定,而会话级在会话建立的时候确定,且在会话中可以随时改变。

对于使用DBCA来建立的数据库,根据建库时选项的不同,得到的数据库级设置也是不相同的。

如果在建立数据库的时候选择CUSTOM,即定制数据库的方式,且在初始化参数的设置页面,字符集子页面中选择ZHS16GBK字符集,国家字符集选择AL16UTF16国家字符集,默认语言选择简体中文,默认日期格式选择中国,那么安装之后得到的数据库,实例级和数据库级设置分别为:

SQL> SHOW PARAMETER NLS

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
nls_calendar                         string
nls_comp                             string
nls_currency                         string
nls_date_format                      string
nls_date_language                    string
nls_dual_currency                    string
nls_iso_currency                     string
nls_language                         string      SIMPLIFIED CHINESE
nls_length_semantics                 string      BYTE
nls_nchar_conv_excp                  string      FALSE
nls_numeric_characters               string
nls_sort                             string
nls_territory                        string      CHINA
nls_time_format                      string
nls_time_tz_format                   string
nls_timestamp_format                 string
nls_timestamp_tz_format              string
SQL> SELECT NAME, VALUE$
  2  FROM PROPS$
  3  WHERE NAME LIKE 'NLS%';

NAME                           VALUE$
------------------------------ --------------------------------------------------
NLS_LANGUAGE                   SIMPLIFIED CHINESE
NLS_TERRITORY                  CHINA
NLS_CURRENCY                   ?
NLS_ISO_CURRENCY               CHINA
NLS_NUMERIC_CHARACTERS         .,
NLS_CHARACTERSET               ZHS16GBK
NLS_CALENDAR                   GREGORIAN
NLS_DATE_FORMAT                DD-MON-RR
NLS_DATE_LANGUAGE              SIMPLIFIED CHINESE
NLS_SORT                       BINARY
NLS_TIME_FORMAT                HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT           DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT             HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT        DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY              ?
NLS_COMP                       BINARY
NLS_LENGTH_SEMANTICS           BYTE
NLS_NCHAR_CONV_EXCP            FALSE
NLS_NCHAR_CHARACTERSET         AL16UTF16
NLS_RDBMS_VERSION              10.2.0.3.0

已选择20行。

而如果在建立数据库的时候选择GENERATE,即一般数据库用途,其他选择不变,即初始化参数的设置页面,字符集子页面中选择ZHS16GBK字符集,国家字符集选择AL16UTF16国家字符集,默认语言选择简体中文,默认日期格式选择中国,那么安装之后得到的数据库,实例级和数据库级设置分别为:

SQL> SHOW PARAMETER NLS

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
nls_calendar                         string
nls_comp                             string
nls_currency                         string
nls_date_format                      string
nls_date_language                    string
nls_dual_currency                    string
nls_iso_currency                     string
nls_language                         string      SIMPLIFIED CHINESE
nls_length_semantics                 string      BYTE
nls_nchar_conv_excp                  string      FALSE
nls_numeric_characters               string
nls_sort                             string
nls_territory                        string      CHINA
nls_time_format                      string
nls_time_tz_format                   string
nls_timestamp_format                 string
nls_timestamp_tz_format              string
SQL> SELECT NAME, VALUE$
  2  FROM PROPS$
  3  WHERE NAME LIKE 'NLS%';

NAME                           VALUE$
------------------------------ -------------------------------------------------
NLS_LANGUAGE                   AMERICAN
NLS_TERRITORY                  AMERICA
NLS_CURRENCY                   $
NLS_ISO_CURRENCY               AMERICA
NLS_NUMERIC_CHARACTERS         .,
NLS_CHARACTERSET               ZHS16GBK
NLS_CALENDAR                   GREGORIAN
NLS_DATE_FORMAT                DD-MON-RR
NLS_DATE_LANGUAGE              AMERICAN
NLS_SORT                       BINARY
NLS_TIME_FORMAT                HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT           DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT             HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT        DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY              $
NLS_COMP                       BINARY
NLS_LENGTH_SEMANTICS           BYTE
NLS_NCHAR_CONV_EXCP            FALSE
NLS_NCHAR_CHARACTERSET         AL16UTF16
NLS_RDBMS_VERSION              10.2.0.3.0

已选择20行。

可以看到,两种方法的初始化参数是一致的,也就是实例级的设置是一致的,但是数据库级设置是不同的。

这时由于GENERATE方式,Oracle采用了已有的数据文件拷贝的方式,通过这种方式实际上数据库是一个已经建好的数据库,而数据库一旦建立成功,数据库级的参数设置也就确定了,在随后的安装过程中,Oracle只是修改了实例级的设置,而不会修改已经存在的数据库级的设置。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-557635/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2007-12-29

  • 博文量
    1955
  • 访问量
    10438714