让Oracle的 SHOW PARAMETER 命令显示隐藏参数
转自 http://blog.csdn.net/staricqxyz/article/details/8624549
Find internal of "show parameter" by session tracing
SQL> select * from v$version;
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
PL/SQL Release 11.2.0.3.0 - Production
CORE 11.2.0.3.0 Production
TNS for Linux: Version 11.2.0.3.0 - Production
NLSRTL Version 11.2.0.3.0 - Production
SQL> alter session set sql_trace=true;
Session altered.
SQL> oradebug setmypid
Statement processed.
SQL> show parameter optimizer
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
optimizer_capture_sql_plan_baselines boolean FALSE
optimizer_dynamic_sampling integer 2
optimizer_features_enable string 11.2.0.3
optimizer_index_caching integer 0
optimizer_index_cost_adj integer 100
optimizer_mode string ALL_ROWS
optimizer_secure_view_merging boolean TRUE
optimizer_use_invisible_indexes boolean FALSE
optimizer_use_pending_statistics boolean FALSE
optimizer_use_sql_plan_baselines boolean TRUE
SQL> oradebug tracefile_name
/u01/app/oracle/diag/rdbms/zhongwc/zhongwc/trace/zhongwc_ora_32320.trc
Find internal sql statement in trace file.The major statement in trace file looks like following.It's clear that "show parameter" actually make query on view 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_CL_PLUS_SHOW_PARAM
FROM V$PARAMETER
WHERE UPPER(NAME) LIKE UPPER('%optimizer%')
ORDER BY NAME_COL_PLUS_SHOW_PARAM, ROWNUM;
Examing definition of view v$parameter
SQL> SELECT view_definition FROM v$fixed_view_definition WHERE view_name = 'V$PARAMETER';
VIEW_DEFINITION
----------------------------------------------------------------------------------------------------
select NUM , NAME , TYPE , VALUE , DISPLAY_VALUE, ISDEFAULT , ISSES_MODIFIABLE , ISSYS_MODIFIABLE ,
ISINSTANCE_MODIFIABLE, ISMODIFIED , ISADJUSTED , ISDEPRECATED, ISBASIC, DESCRIPTION, UPDATE_COMMENT
, HASH from GV$PARAMETER where inst_id = USERENV('Instance')
Examing definition of view gv$parameter,hidden init parameters start with character '_'
SQL> SELECT view_definition FROM v$fixed_view_definition WHERE view_name = 'GV$PARAMETER';
VIEW_DEFINITION
--------------------------------------------------------------------------------
select x.inst_id,x.indx+1,ksppinm,ksppity,ksppstvl, ksppstdvl, ksppstdf, decode
(bitand(ksppiflg/256,1),1,'TRUE','FALSE'), decode(bitand(ksppiflg/65536,3),1,'I
MMEDIATE',2,'DEFERRED', 3,'IMMEDIATE','FALSE'),
decode(bitand(ksppiflg,4),4,'FALSE', decod
e(bitand(ksppiflg/65536,3), 0, 'FALSE', 'TRUE')), decode(bitand(ksppstvf,7),
1,'MODIFIED',4,'SYSTEM_MOD','FALSE'), decode(bitand(ksppstvf,2),2,'TRUE','FALSE
'), decode(bitand(ksppilrmflg/64, 1), 1, 'TRUE', 'FALSE'), decode(bitand(ksppi
lrmflg/268435456, 1), 1, 'TRUE', 'FALSE'), ksppdesc, ksppstcmnt, ksppihash fro
m x$ksppi x, x$ksppcv y where (x.indx = y.indx) and bitand(ksppiflg,268435456)
= 0 and ((translate(ksppinm,'_','#') not like '##%') and ((translate(ksppinm
,'_','#') not like '#%') or (ksppstdf = 'FALSE') or (bitand(ksppstvf,5
) > 0)))
Create pseudo-view of v$paramter
[oracle@zhongwc ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Fri Mar 1 09:01:58 2013
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining and Real Application Testing options
SQL> create or replace view my_v$parameter_with_hidden
(NUM,NAME , TYPE, display_Value , ISDEFAULT , ISSES_MODIFIABLE ,
ISSYS_MODIFIABLE ,ISMODIFIED , ISADJUSTED, DESCRIPTION,
UPDATE_COMMENT)
as
select 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(ksppstvf,2),2,'TRUE','FALSE'),
ksppdesc, ksppstcmnt
from x$ksppi x, x$ksppcv y
where (x.indx = y.indx)
/
View created.
SQL> grant select on my_v$parameter_with_hidden to system;
Grant succeeded.
SQL> conn system
Enter password:
Connected.
SQL> create synonym v$parameter for sys.my_v$parameter_with_hidden;
Synonym created.
able to use "show parameter" to show hidden init parameters
SQL> show parameter optimizer
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
_db_file_optimizer_read_count integer 8
_optimizer_adaptive_cursor_sharing boolean TRUE
_optimizer_adjust_for_nulls boolean TRUE
_optimizer_autostats_job boolean TRUE
_optimizer_aw_join_push_enabled boolean TRUE
_optimizer_aw_stats_enabled boolean TRUE
_optimizer_better_inlist_costing string ALL
_optimizer_block_size integer 8192
_optimizer_cache_stats boolean FALSE
_optimizer_cartesian_enabled boolean TRUE
_optimizer_cbqt_factor integer 50
_optimizer_cbqt_no_size_restriction boolean TRUE
_optimizer_ceil_cost boolean TRUE
_optimizer_coalesce_subqueries boolean TRUE
_optimizer_complex_pred_selectivity boolean TRUE
_optimizer_compute_index_stats boolean TRUE
_optimizer_connect_by_cb_whr_only boolean FALSE
_optimizer_connect_by_combine_sw boolean TRUE
_optimizer_connect_by_cost_based boolean TRUE
_optimizer_connect_by_elim_dups boolean TRUE
_optimizer_correct_sq_selectivity boolean TRUE
_optimizer_cost_based_transformation string LINEAR
让Oracle的 SHOW PARAMETER 命令显示隐藏参数的更多相关文章
- 安装oracle后java -version命令显示 jdk version "1.3.1"的原因
因为先装的JDK,后装了oracle,oracle的JDK配置把原来的jdk路径替换掉了. 我的电脑->属性->高级->环境变量->系统变量->PATH ,把JDK的路径 ...
- SSIS 连接ORACLE 无法从 SQL 命令中提取参数的解决方案
第一步: 定义包变量:maxdate 类型为String 定义包变量:sqlStatement类型为String,值为:select * from i_out_serv_mon 第二步: 取&q ...
- oracle如何设置show parameter显示隐含参数
在sqlplus中shwo parameter是显示不了隐藏参数的,需要做一个处理,如下所示: 以SYS用户登录: C:\Documents and Settings\guogang>sq ...
- oracle rac常用的命令
oracle rac常用的命令 节点层:olsnodes 网络层: oifcfg 集群层:crsctl,ocrcheck,ocrdump,ocrconfig 应用层:srvctl,onsctl,crs ...
- Oracle归档日志所在目录时间不对&&Oracle集群日志时间显示错误
Oracle归档日志所在目录时间不对&&Oracle集群日志时间显示错误 前言 这个问题在18年的时候遇到了,基本不注意并且集群或者数据库运行正常是很难注意到的. 忘记当时怎么发现的了 ...
- Oracle 常用运维命令整理
点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! 一.oracle建库与删库命令 (1)oracle11g ...
- oracle PL/SQL管理命令语句
一.ORACLE的启动和关闭 1.在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su - oracle a.启动ORACLE系统 oracle>svrmgrl ...
- C#隐式运行CMD命令(隐藏命令窗口)
原文 C#隐式运行CMD命令(隐藏命令窗口) 本文实现了C#隐式运行CMD命令的功能.下图是实例程序的主画面.在命令文本框输入DOS命令,点击"Run"按钮,在下面的文本框中输出运 ...
- oracle rac 数据库常用命令
oracle rac 数据库常用命令:1.所有实例和服务的状态srvclt status database -d orcl单个实例的状态:srvctl status instance -d orcl ...
随机推荐
- Postman—命令执行脚本及生成报告
前言 前面的应用中,都是在postman图形界面工具里面进行测试,但是有时候我们需要把测试脚本集成到CI平台,或者在非图形界面的系统环境下进行测试,那么我们该如果处理呢 通过newman来执行post ...
- Spring+Druid+SpringMVC的搭建(附Demo)
最近公司事情比较少,便想利用这段空闲时间做一个自己的博客. 前端界面已经搞好,感谢杨姐的模板,自己稍微把模板没有的模块给补全了. 今天便开始自己的SSM框架搭建,数据库链接是采用数据库连接池.先上个项 ...
- php在浏览器禁止cookie后,仍然能使用session的方法
1.a.php页面 session_start(); $_SESSION['msg'] = "i love you"; $sn = session_id();//获取当前sessi ...
- Date类学习总结(Calendar Date 字符串 相互转换 格式化)
Date类学习总结 1.计算某一月份的最大天数 Calendar time=Calendar.getInstance();time.clear();time.set(Calendar.YEAR,yea ...
- 软件级负载均衡器(LVS/HAProxy/Nginx)的特点简介和对比
本文出自 “抚琴煮酒” 博客,出处http://andrewyu.blog.51cto.com/1604432/697466 现在网站发展的趋势对网络负载均衡的使用是随着网站规模的提升根据不同的阶 ...
- SpringMVC源码阅读:Json,Xml自动转换
1.前言 SpringMVC是目前J2EE平台的主流Web框架,不熟悉的园友可以看SpringMVC源码阅读入门,它交代了SpringMVC的基础知识和源码阅读的技巧 本文将通过源码(基于Spring ...
- spring cloud连载第三篇之Spring Cloud Netflix
1. Service Discovery: Eureka Server(服务发现:eureka服务器) 1.1 依赖 <dependency> <groupId>org.spr ...
- JS中的编码,解码类型及说明
使用ajax向后台提交的时候 由于参数中含有# 默认会被截断 只保留#之前的字符 json格式的字符串则不会被请求到后台的action 可以使用encodeURIComponent在前台进行编码, ...
- JavaScript 函数全局变量定义
在 JavaScript 中, 作用域 影响着变量的作用范围.在函数外定义的变量具有 全局 作用域.这意味着,具有全局作用域的变量可以在代码的任何地方被调用. 没有使用var关键字定义的变量,会被自动 ...
- 构造用于1个方法在多线程环境下重复多次执行测试的通用方法 C#
static void MultithreadsCycleTestWithSameMethod(int threadNumber, int cycleNumber, ThreadStart actio ...