- 博客(10)
- 资源 (1)
- 收藏
- 关注
原创 如何找到表中的主键列?
如何找到表中的主键:drop table test1 purge;drop table test2 purge;create table test1(ID number,NAME varchar2(20));create table test2(ID number,NAME varchar2(20));alter table test1 add constraint PK_T1
2013-12-30 11:46:43 1531 1
原创 2013-12-27一次关于子查询的优化
一看下面的SQL,子查询非常多,可以使用调优利器dbms_xplan.display_cursor。SQL>alter session set statistics_level=all;SQL>set pagesize 100SQL>SELECT * FROM (SELECT unpaged_.*, rownum rn_ FROM (select t2.
2013-12-27 17:14:59 1469
原创 2013-12-26一次library cache lock的诊断--OEM引发的
公司内有一个系统普遍慢,对于这种普遍慢的情况,就看AWR报告,晚上在用户不适用的情况下负载都很高(有4个逻辑CPU),可以看到library cache lock的占比非常大。SQL> select * from v$version;BANNER-----------------------------------------------------------------------
2013-12-27 09:45:54 1771
原创 都是大字段clob设计不合理惹的祸
今天开发组的同事找到我,说查一张小表4587条记录,18个字段需要12s,简直不敢相信。SQL> select * from cfms_questions;已选择4587行。已用时间: 00: 00: 11.52执行计划----------------------------------------------------------Plan hash value:39
2013-12-27 09:07:10 5027
原创 oracle虚拟索引的运用
在实际的调优工作,将执行计划中的大表的全表索引变为索引扫描是一个重要的手段,当为大表做调优的时候,难免会建索引试试看,这个不是很好。最好是建一个虚拟索引,看看CBO的评估,这种做法更高效一些。下面我们来做个试验,然后用10046探究下其原理。SQL> drop table test purge;SQL> create table test as select * from dba_obje
2013-12-25 09:27:42 1394
转载 性能比较工具runstats
runstats能对做同一件事的两个不同方法进行比较,得出谁好一点。我们只需要提供两个不同方法,余下的事情都由runstats负责。runstats只是测量3个要素: 1. 耗用的时间。 2. 系统统计结果:会并排地显示每个方法做某件事(如执行一个解析调用)的次数,并展示二者之差。 3. latching,这是报告关键的输出。 安装过程: cr
2013-12-13 08:36:38 1547
转载 Vage:高级DBA的突破之路
有一个笑话,创世第一天,上帝创造了驴。上帝对驴说:“今天我创造了你!作为一头驴,你必须跟终日拉磨,任劳任愿。我给你50年的寿命。” 驴不同意:“什么?这种苦日子你要我活50年?让我活20年吧,30年还给你。”上帝同意了。 第二天,上帝创造了猴子。上帝对猴子说:“你必须带给人们娱乐。你必须让他们开怀大笑,耍把戏。我给你20年寿命。” 猴子不干:“什
2013-12-12 08:51:46 2164 2
原创 彻底弄懂oracle硬解析、软解析、软软解析
硬解析和软解析有相同的一步,而软软解析与硬解析、软解析完全不一样。先来说下理论上的东西,然后来做个实验。硬解析过程: 1.语法、语义及权限检查; 2.查询转换(通过应用各种不同的转换技巧,会生成语义上等同的新的SQL语句); 3.根据统计信息生成执行计划(这一步比较耗时); 4.将游标信息(执行计划)保存到库缓存。软解析过程: 1.语法、语
2013-12-11 17:47:07 10543
原创 sql trace、10046、tkprof介绍
sql_trace命令会将SQL执行的整个过程输出到一个trace文件中,我们可以通过阅读这个trace文件来了解这个SQL执行过程中oracle究竟做了哪些事情。 SQL是如何操作数据的。 SQL执行过程中产生了那些等待时间。 SQL执行中消耗了多少资源。 SQL的实际执行计划。 SQL产生的递归语句。 10046事件并不是oracle官方提供给
2013-12-09 19:12:08 1320
原创 SQL优化----如何使用工具快速诊断出统计信息有问题?
下列的SQL语句是一个报表统计的SQL,听开发说with里面返回的记录其实很少,只有十几条而已。SQL> WITH STAT AS ( 2 SELECT PTI.FROM_BUREAU_NO,PTI.TASK_ID, PPE.PATROL_EQUIPMENT_ID,PTI.IS_COMPLETE,PPE.DEVICE_ID 3 FROM GG_pTASK_PATRO
2013-12-04 18:09:24 1310
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人