v$parameter, v$parameter2, v$system_parameter, v$system_parameter2, v$spparameter区别

转载:[转]v$parameter, v$parameter2, v$system_parameter, v$system_parameter2, v$spparameter区别 - freeliver54 - 博客园

1 v$parameter

v$parameter显示的是session级的参数. 如果没有使用alter session单独设置当前session的参数值.

每一个新Session都是从 v$system_parameter上取得系统的当前值而产生Session的v$parameter view. (实验1)

在运行过程中, v$parameter可能被用户改变.

2 v$parameter2

v$parameter2显示的是session级的参数.

与v$parameter之间的区别则在于v$parameter2把LIST的值分开来了, 一行变多行数据, 用ORDINAL来指示相对的位置. (实验2)

3 v$system_parameter

v$system_parameter显示的是system级的参数, 保存的是使用alter system修改的值(scope=both或者memory). 上面两个都是当前已经生效的参数值.

4 v$system_parameter2

v$system_parameter2显示的是system级的参数.

5 v$spparameter

v$spparameter显示的就是保存在spfile中的参数值(scope=both或者spfile).

6 字段解释

字段

字段值

说明

isses_modifiable

true

表示这个参数可以使用alter session修改

false

表示不能使用alter session命令修改

issys_modifiable

immediate

表示这次对这个参数的修改会在当前所有会话中就"立即"发生作用, 即修改立即生效.

deferred

表示这次修改对当前会话不发生作用, 在以后打开的会话中起作用, 故它有"推迟"影响的效果. 修改该参数值时需要使用alter system set...deferred. 如果不加deferred关键字则报错ORA-02096: specified initialization parameter is not modifiable with this option.

false

表示不能使用alter system命令修改, 只能alter system ...... scope=spfile

7 show parameter

通过sql_trace发现,sqlplus中的show parameter其实查询的是v$parameter,实际的查询语句如下:

select name name_col_plus_show_param,

       decode(type,

              1,

              'boolean',

              2,

              'string',

              3,

              'integer',

              4,

              'file',

              5,

              'number',

              6,

              'big integer',

              'unknown') type,

       display_value value_col_plus_show_param

  from v$parameter

 where upper(name) like upper('%db_file%')

 order by name_col_plus_show_param, rownum;

8 底层表解释

通过autotrace,可以知道:

v$parameter,v$system_parameter的底层表是x$ksppcv和x$ksppi

v$parameter2,v$system_parameter2的底层表是x$ksppcv2和x$ksppi

v$spparameter的底层表是x$kspspfile

9 实验1

SQL> select t1.value sesvalue, t2.value sysvalue

  2    from v$parameter t1, v$system_parameter t2

  3   where t1.num = t2.num

  4     and t1.value <> t2.value;

SESVALUE            SYSVALUE

------------------- -------------------

SQL> select value from v$system_parameter where name = 'global_names';

VALUE

-------------------

FALSE

SQL> select value from v$parameter where name = 'global_names';

VALUE

-------------------

FALSE

SQL> alter session set global_names = true;

Session altered

SQL> select t1.name, t1.value sesvalue, t2.value sysvalue

  2    from v$parameter t1, v$system_parameter t2

  3   where t1.num = t2.num

  4     and t1.value <> t2.value;

NAME                SESVALUE            SYSVALUE

------------------- ------------------- -------------------

global_names        TRUE                FALSE

10 实验2

SQL> column value format a106;

SQL> select value from v$parameter where name like 'control_files';

VALUE

----------------------------------------------------------------------------------------------------------

D:/ORACLE/PRODUCT/10.2.0/ORADATA/TEST/CONTROL01.CTL, D:/ORACLE/PRODUCT/10.2.0/ORADATA/TEST/CONTROL02.CTL,

D:/ORACLE/PRODUCT/10.2.0/ORADATA/TEST/CONTROL03.CTL

SQL> column name format a15;

SQL> column value format a53;

SQL> column ordinal format a8;

SQL> select name ,value, ordinal from v$parameter2 where name like 'control_files';

NAME            VALUE                                                  ORDINAL

--------------- ----------------------------------------------------- --------

control_files   D:/ORACLE/PRODUCT/10.2.0/ORADATA/TEST/CONTROL01.CTL          1

control_files   D:/ORACLE/PRODUCT/10.2.0/ORADATA/TEST/CONTROL02.CTL          2

control_files   D:/ORACLE/PRODUCT/10.2.0/ORADATA/TEST/CONTROL03.CTL          3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值