OPTIMIZER_INDEX_CACHING和OPTIMIZER_INDEX_COST_ADJ
OPTIMIZER_INDEX_CACHINGPropertyDescriptionParameter typeIntegerDefault value0ModifiableALTER SESSION, ALTER SYSTEMRange of values0 to 100OPTIMIZER_INDEX_CACHING lets you adjust the behavior....
Dynamic Sampling Levels
The sampling levels are as follows if the dynamic sampling level used is from a cursor hint or from the OPTIMIZER_DYNAMIC_SAMPLING initialization parameter:Level 0: Do not use dynamic sampling.Level 1...
Oracle转换user_tab_columns中high_value值为十进制
今天本想计算下基于范围的索引选择率,但是通过user_tab_columns查询出来low_value和high_value结果是raw类型的,而且我们知道它是截取了后32位,如果我想知道他们代表确切的十进制数将是什么呢?折腾了半天...
ddl 导致分区表全局索引unusable
上周五意外发现一个分区表的全局索引失效变为unusable,在监控SQL性能时有几个SQL因为这个索引而挂掉。忽然想起是前一天进行测试时,对该表一个分区做了exchange交换分区操作。下面还原下场景:...
听明白别人说的,表达清楚自己要的。
听明白别人说的,表达清楚自己要的。
嵌套循环成本消耗
这里只考虑io消耗:全表扫描:一次多块读时间和多块读次数;多块读次数由总块数与一次多块读的块数决定单表全表扫描成本:多块读次数*一次多块读时间/单块读时间=(总块数/一次多块读块数) * 一次多块读时间/单块读时...
Oracle 成本计算公式
开始专门从事数据库性能优化快1个月了。从今天开始,我决定要好好学习《Cost-Based Oracle Fundamentals》。加油! 先介绍下成本计算公式,这个公式会影响整个学习过程~ Cost = ( #SRds ...
将主查询条件写到子查询里执行效果会怎样?
--测试环境create table t1 as select object_id,object_name from dba_objects;create table t2 as select object_id,object_name from user_objects;create table t3 as select rownum object_id,table_name o...
join-semi and join-anti
测试环境:SQL> select id,name from t1; ID NAME---------- -------------------- 1 A 2 B 3 4 DSQL> select id,name from t2; ID NAME--...
hash join and hash join semi
测试环境:SQL> select * from t1; ID NAME---------- -------------------- 1 A 2 B 3 4 DSQL> select * from t2; ID NAME---------- -------...
in 和 not in ,exists 和 not exists
昨天听崔华讲 in 和 not in 不完全相反,回来做了下测试。同时对比了下 exists 和 not exists。测试环境:create table t1(id number,name varchar2(20));insert into t1 values(1,'A');ins...
关于INLIST ITERATOR的几个测试
文档说明:When the Optimizer Uses IN-List IteratorsThe optimizer uses an IN-list iterator when an IN clause is specified with values, and the optimizer finds a selective index for that column....
一条语句使用group by前后的变化
drop table test1;drop table test2;create table test1 asselect object_id, object_name from dba_objects;多执行几次insert into test1 select * from test1;select count(1) from test1;--796368create...
dbms_utility.get_time
dbms_utility.get_time 返回当前时间的1/ 100秒,它是用以前后两个取点做对比的,单个是没有具体意义的,就是用来取差值的!
runstats工具的配置及使用
runstats是tom写的一个用来比较同一事件的不同方法的工具。今天测试一个语句用group by和不用效率有何不同时,头儿建议用runstats来看。第一次用,很好很强大。1、以sys用户登录,执行下列分配权限语句。要执行runst...
out join 和 inner join
create table table1(object_id number,object_name varchar2(30));insert into table1 (OBJECT_ID, OBJECT_NAME)values (20, 'ICOL$');insert into table1 (OBJECT_ID, OBJECT_NAME)values (44, 'I_USE...
in使用的一个例子
今天看文档时,感觉这个结论适用范围不是那么广。select pk_invmandoc from t1 where pk_corp = '1363' and exists (select pk_invbasdoc &nbs...
修改数据文件地址
现场反应前台研发建表空间时建错了目录,让修改:SQL> select name from v$datafile;NAME--------------------------------------------------------------------------------/home/oracle/oradata/orcl/system01....
windows2008卸载win32_11gR2_client
今天现场同事反映自己装了一个32位的11.2.0.1.0客户端,但是却不会下载。按10g方法用UniversalInstaller卸载,会提示用deinstall.sh去卸载。上网查资料说Oracle从从11.2开始,Oracle提供了一个专门的文件来卸载数...
怎么识别Oracle客户端、数据库、Java在WIN上是多少位的
好记性不如烂笔头,今天在现场测试,只装了客户端,我想看看到底装的是多少位的客户端但是忘了怎么查幸亏这篇文章还保留着,做个记录吧。How to know if Oracle client, DB,or JAVA installed is 32-bit or ...