Oracle数据库的启动用到了初始化参数,一般情况下可以在sqlplus里用show parameter 来获得。而Oracle数据库为了debug 或者解决一些特殊的问题,还提供了一些以“_”开头的隐含参数。 网络上有一些script可以让我们轻松检查这些隐含参数. 下面我们来详细介绍一下如何直接在sqlplus 用show parameter来获取隐含参数?
用sqlplus里的show parameter来直接查看Oracle隐含参数:
1.首先,我们需要了解sqlplus是如何通过show parameter获得参数的。大家只需通过sql_trace的方式可以发现。
sqlplus serol/luo
alter session set sql_trace=true;
show parameter optimizer
NAME TYPE VALUE
-------------------- -----------------
optimizer_dynamic_sampling integer 1
optimizer_features_enable string 9.2.0.1
optimizer_index_caching integer 0
optimizer_index_cost_adj integer 1
optimizer_max_permutations integer 2000
optimizer_mode string RULE
exit
到udump底下找到trace文件,里面的最主要的语句是:
SELECT NAME name_col_plus_show_param,DECODE(TYPE,1,'boolean',2,'string',3,'integer',4,'file',6,'big
integer','unknown') TYPE,VALUE value_col_plus_show_param from V$PARAMETER WHERE UPPER(NAME) LIKE UPP
ER('%optimizer%') ORDER BY name_col_plus_show_param,ROWNUM
可以看到,sqlplus的show parameter实际上就是查询V$PARAMETER .
2.再来看一下v$parameter的定义。
SELECT * from v$fixed_view_definition
WHERE view_name = 'V$PARAMETER';
select NUM , NAME , TYPE , VALUE , ISDEFAULT , ISSES_MODIFIABLE , ISSYS_MODIFIABLE , ISMODIFIED , ISADJUSTED , DESCRIPTION, UPDATE_COMMENT from GV$PARAMETER where inst_id = USERENV('Instance')
SELECT * from v$fixed_view_definition
WHERE view_name = 'GV$PARAMETER';
select x.inst_id,x.indx+1,ksppinm,ksppity,ksppstvl,ksppstdf,
decode(bitand(ksppiflg/256,1),1,'TRUE','FALSE'),
decode(bitand(ksppiflg/65536,3),1,'IMMEDIATE',2,'DEFERRED',
3,'IMMEDIATE','FALSE'), decode(bitand(ksppstvf,7),1,'MODIFIED',4,'SYSTEM_MOD','FALSE'),
decode(bitand(ksp
初学c#加Oracle编程,看了许多网上教程,都介绍的是ado连接方式,而且采用的都是在后台输入连接字符串的方式。于是萌生了写一个dll文件来代替这个连接字符串,以后每次连接数据库事只要调用这个dll文件就行的想法。闲言少叙,将代码写出, ......