ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 查询初始化参数的方法(二)

查询初始化参数的方法(二)

原创 Linux操作系统 作者:yangtingkun 时间:2009-05-19 23:56:18 0 删除 编辑

查询初始化参数的方法很多,比如SHOW PARAMETER,或查询V$PARAMETER等,这里简单总结一下。

这一篇介绍V$PARAMETER视图与V$SYSTEM_PARAMETER视图的不同。

查询初始化参数的方法(一):http://yangtingkun.itpub.net/post/468/484669

 

 

上一篇文章介绍了很多种查询初始化参数的方法,而且说明了V$PARAMETER视图和V$PARAMETER2视图的区别。

这里看看V$PARAMETERV$SYSTEM_PARAMETER视图的区别。

一般在查询初始化参数的时候都习惯性的使用SHOW PARAMETER,也就是查询V$PARAMETER视图,但是有些时候查询这个视图得到的结果并不准确:

SQL> show parameter query_rewrite_enabled

NAME                                 TYPE        VALUE
------------------------------------ ----------- --------------------
query_rewrite_enabled                string      TRUE
SQL> select name, value
  2  from v$parameter
  3  where name = 'query_rewrite_enabled';

NAME                                     VALUE
---------------------------------------- ----------------------------
query_rewrite_enabled                    TRUE

SQL> select name, value
  2  from v$system_parameter
  3  where name = 'query_rewrite_enabled';

NAME                                     VALUE
---------------------------------------- ----------------------------
query_rewrite_enabled                    TRUE

这是如果在会话级修改query_rewrite_enabled这个初始化参数:

SQL> alter session set query_rewrite_enabled = false;

会话已更改。

SQL> show parameter query_rewrite_enabled

NAME                                 TYPE        VALUE
------------------------------------ ----------- -------------------
query_rewrite_enabled                string      FALSE
SQL> select name, value
  2  from v$parameter
  3  where name = 'query_rewrite_enabled';

NAME                                     VALUE
---------------------------------------- ---------------------------
query_rewrite_enabled                    FALSE

SQL> select name, value
  2  from v$system_parameter
  3  where name = 'query_rewrite_enabled';

NAME                                     VALUE
---------------------------------------- ---------------------------
query_rewrite_enabled                    TRUE

可以看到,show parameter和查询v$parameter视图的结果都是FALSE,而刚才做的修改只是会话级,并没有修改系统的初始化参数。在上一篇描述这两个视图的时候就提到了,V$PARAMETER视图反映的是初始化参数在当前会话中生效的值,而V$SYSTEM_PARAMETER反映的才是实例级上的初始化参数。

在来看看延迟参数修改的情况:

SQL> select name, value
  2  from v$parameter
  3  where name = 'recyclebin';

NAME                                     VALUE
---------------------------------------- ------------------------------------
recyclebin                               on

SQL> select name, value
  2  from v$system_parameter
  3  where name = 'recyclebin';

NAME                                     VALUE
---------------------------------------- ------------------------------------
recyclebin                               on

SQL> alter system set recyclebin = off deferred scope = memory;

系统已更改。

SQL> select name, value
  2  from v$parameter
  3  where name = 'recyclebin';

NAME                                     VALUE
---------------------------------------- ------------------------------------
recyclebin                               on

SQL> select name, value
  2  from v$system_parameter
  3  where name = 'recyclebin';

NAME                                     VALUE
---------------------------------------- ------------------------------------
recyclebin                               OFF

结果和前面的恰好反过来,v$parameter视图中的结果没有发生变化,而v$system_parameter视图的结果变成了OFF。这是因为延迟修改对数据库中当前存在的会话不生效,因此反映当前会话情况的v$parameter视图结果不变,而对于系统而言,初始化参数已经改变,而且所有新建会话的参数也会改变,所以v$system_parameter视图的结果发生了改变。

SQL> CONN YANGTK/YANGTK@YTK111
已连接。
SQL> select name, value
  2  from v$parameter
  3  where name = 'recyclebin';

NAME                                     VALUE
---------------------------------------- ---------------------------
recyclebin                               OFF

SQL> select name, value
  2  from v$system_parameter
  3  where name = 'recyclebin';

NAME                                     VALUE
---------------------------------------- ---------------------------
recyclebin                               OFF

根据这两个例子,利用V$PARAMETER视图获取系统的启动初始化参数是不准确的,应该从V$SYSTEM_PARAMETER视图来获取。

 

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

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

注册时间:2007-12-29

  • 博文量
    1955
  • 访问量
    10523462