记一条sql优化2
Oracle里的统计信息是非常重要的,统计信息的不正确会使CBO走错误的执行计划,下面就是个例子Plan hash value: 209305330----------------------------------------------------------------------------------------------------------------------------------------------------------------------| Id | Op...
管好统计信息,开启SQL优化之门
在DBA的工作中,SQL优化的工作量占工作很大的一块,我们在平时工作中也是这样,常常遇到一些执行效率低下的SQL语句,而这些执行效率低下的SQL,有的是业务系统刚刚上线的,有的是已经执行很久但因为执行环境变化而导致出现的。这里给大家分享一个SQL的优化案例分析。 根据我们监控系统,发现线上O...
物化视图MLOG$表的优化
线上数据库有一张表,需要往线下定时同步,所以就使用物化视图来实现表增量的同步,但随着时间,发现每次同步的时间慢慢越来越长,但每次同步时增量又比较相当,并没有大的增长,最终发现是由于MLOG$表的高水位线太高,就连无增量数据时查询也长达2秒。SQL> set timing onSQL> select count(*) ...
SORT ORDER BY STOPKEY的优化
根据addm建议,这个sql从昨天晚上20点到现在14点执行了65390次,平均消耗了0.12S,如果优化好这条sql,DB将得到61%的好处,不知道ORACLE是怎么计算的?RECOMMENDATION 1: SQL Tuning...
测试execute grant statement SQL plan is INVALIDATIONS
Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit ProductionWith the Partitioning, Automatic Storage Management, OLAP, Data Miningand Real Applicat...
执行 grant statement 命令, DB hang
<div><span style="font-size:14px;">当时执行的sql:grant select on xxx_user.xxx_table to xxx_user;</span></div><div><br /></div><div><span style="font-size:14px;">执行以上grant statement的时候db响应特别慢(hang),发现db出现大量的等待(latch: library cache,cursor: pin S wait on X,library ...
使用sample优化SQL
<span style="font-size:14px;">开发同学想使用以下的SQL随机取出状态为0的一条CODE用于业务上发奖品ID,但又事先不知道这个code,只能从这个cord表中找状态为0的记录。<br />select *<br /> from bb.b_card<br /> where code in (select code<br />  ...
JOIN连接的3种模式
连接(join)<br />如果有主键的列连接,将带主键和唯一键约束的表放在连接的第一个位置,再考虑其它表连接<br />如果有外键连接,则将该表放在连接的最后。<br /><br /><br />Nested Loop Joins(嵌套循环连接)<br />外部表的每一行都和内部表的所有行连接。<br />当表的行较少的时候,数据库会选择这种连接。<br /...
索引的几种使用模式
索引的使用对数据库的性能有巨大的影响。共有五类不同的使用模式。1。INDEX UNIQUE SCAN 效率最高,主键或唯一索引2。I...
使用reverse索引优化like语句
<pre style="orphans:2;text-align:-webkit-auto;widows:2;font-size:14px;line-height:21px;">--原查询sql如下:select t.CUST_ID, t.CUST_NAME, t.CUST_SEX_DM, t.GRADE_NO, t.ID_CARD, t.CUST_AGE, t.TEL_WORK, t.TEL_HOME, t.TEL_MOBILE, t.CUST_EMAI...
一条SQL的优化
SQL优化
由于数据类型不一致导致的sql查询慢
在进行bbs的sql优化上,有条sql成本较高,在查询表结构时发现有索引,但是sql没有用到,是什么原因导致索引失效呢<br />下面是解决问题的一点思路,还请指正<br />1.先看执行计划<br />sys@BBS> SELECT M.ID, M.SENDUSERID, U.NICKNAME, M.TITLE, M.SENDTIME, M.STATE<br /> 2 FROM BBS_MSGBOX M...
Oracle SPA for create index
1.Setting Up the TestCONN / AS SYSDBACREATE USER SPA_TUSER IDENTIFIED BY SPA_TUSER QUOTA UNLIMITED ON users;GRANT CONNECT, CREATE TABLE TO SPA_TUSER;CONN SPA_TUSER/SPA_TUSERdrop table spa_objects purge;CREATE T...