没有索引导致的DIRECT PATH READ】的更多相关文章

5月20号下午4-5点,某项目组进行数据入库作业,作业人员反映入库速度很慢.在16:30和16:50分别采集了快照,并根据两个快照得到AWR报告. 直接看TOP 5 EVENTS,这是数据库问题诊断的最快捷径. 先看占DB TIME达63.33%的direct path read事件.等待次数78586次,等待总时间3833s(约64分钟),而elapsed time只有20分钟.因此我们需要弄清楚是什么动作导致这么高的direct path read. 那什么是direct path read…
同事反应十几分钟前数据库好像挂起了一会,让我排查数据库是否存在什么问题. 第一反应看当前数据库还是否有什么等待事件,结果有direct path write等待事件. 于是抓了问题时间段20分钟的ASH报告,发现了direct path write居首位 再顺着看SQL,结果是这些INSERT操作 经过查看表结构,TICKETIMAGE列是BLOB类型,推测数据库在向表格里插入BLOB数据时候没有经过缓存,直接向数据库文件写数据库才造成的direct path write 等待事件 由于本地磁盘…
文章转自:http://www.itpub.net/thread-1815281-1-1.html 传统读取数据的方式是服务器进程通过读取磁盘,然后把数据加载到共享内存中,这样后面的进程就可以通过共享内存访问这些数据,不用再通过缓慢的磁盘读取来完成.direct path read读取数据块方式,是指服务器进程直接读取数据文件,不经过buffer cache,这种方式读取的数据块会加载到服务器进程的PGA内中当中,不会进入buffer cache中.11G之前的direct path read主…
在Oracle 11g中,全表扫描可能使用direct path read方式,绕过buffer cache,这样的全表扫描就是物理读了. 在10g中,都是通过gc buffer来读的,所以不存在direct path read的问题. direct path read较高的可能原因有: 1. 大量的磁盘排序操作,order by, group by, union, distinct, rollup, 无法在PGA中完成排序,需要利用temp表空间进行排序. 当从临时表空间中读取排序结果时,会产…
黎俊杰 | 2016-07-28 14:37 声明:部分表名为了脱敏而用XX代替 1.故障现象 (1)一个业务系统输入用户名与密码后无法进入首页,表现为一直在运行等待,运行缓慢 (2)整个系统无法正常使用,接近停运状态 2.故障解决方法 调整数据库参数alter system setevent='10949 trace name context forever, level 1'来关闭"direct path read"(直接路径读)特性,使SQL语句可以从缓存中查询数据,达到降低I/…
direct path read在11g中,全表扫描可能使用direct path read方式,绕过buffer cache,这样的全表扫描就是物理读了. 在10g中,都是通过gc buffer来读的,所以不存在direct path read的问题. direct path read较高的可能原因有: 1. 大量的磁盘排序操作,order by, group by, union, distinct, rollup, 无法在PGA中完成排序,需要利用temp表空间进行排序. 当从临时表空间中读…
一般在混合型环境中,大表在进行全表扫描或者走并行的时候一般会出现direct path read等待事件,如果在OLTP或者纯粹的DSS环境中,出现大量的direct path read直接路径读取,这样就有问题了,尤其是一些流水线的批处理系统中,会导致大量的free buffer wait等(因为direct path reads会导致oracle执行object level checkpoint将所有目标对象的脏块写入磁盘,然后将这些块从磁盘读取到进程的PGA,如果有未提交的事务,还必须使用…
转载:http://www.dbtan.com/2010/04/direct-path-readwrite.html direct path read/write (直接路径读/写): 直接路径读(direct path read)通常发生在Oracle直接读数据到进程PGA时,这个读取不需要经过SGA.直接路径读等待事件的3个参数分别是file number(指绝对文件号).first dba.block cnt数量.在Oracle 10g/11g中,这个等待事件被归于User I/O一类.…
http://blog.sina.com.cn/s/blog_61cd89f60102eej1.html 1.direct path read temp select TOTAL_BLOCKS,USED_BLOCKS from v$sort_segment; 看看是不是在不段增加select * from v$sysstat where NAME LIKE '%workarea executions%'; 看看是不是在不段增加select operation_id,operation_type,…
direct path read 在11g中,全表扫描可能使用direct path read方式,绕过buffer cache,这种全表扫描就是物理读了. 在10g中,都是通过gc buffer来读的.所以不存在direct path read的问题. direct path read较高的可能原因有: 1. 大量的磁盘排序操作,order by, group by, union, distinct, rollup, 无法在PGA中完毕排序,须要利用temp表空间进行排序. 当从暂时表空间中读…