浅谈oracle数据库sql物理读高性能问题

您所在的位置:网站首页 物理i怎么读 浅谈oracle数据库sql物理读高性能问题

浅谈oracle数据库sql物理读高性能问题

2024-07-16 15:23| 来源: 网络整理| 查看: 265

在实践中ORACLE数据库SQL物理读(即物理读大小)高会引发性能问题。

      物理读(Physical Reads)从磁盘读取数据块到内存的操作叫物理读,当SGA里的高速缓存(Cache Buffer)里面不存在这些数据块时,就会产生物理读,另外。像全表扫描、磁盘排序等操作也可能产生物理读,原因也是因为ORACLE数据库需要访问的数据块较多,而有些数据块不在内存当中,需要从磁盘读取。

     物理读的单位为数据库块,默认大小为8KB。

     通常相关指标为平均单次执行物理读不得大于500。

     SQL语句物理读高说明需大量从磁盘读取数据,很多情况下会出现性能问题。扫描大表时常容易出现。解决方案:分析SQL语句,优化SQL,创建合适的索引等。

      通过AWR报告可以查看物理读的情况:

查看物理读top10具体的sql情况:

SET LINESIZE 300; SET PAGESIZE 300; SET LONG 50000; SELECT * FROM ( SELECT sql_fulltext AS sql, SQL_ID, disk_reads / executions AS "Reads/Exec", disk_reads, executions FROM V$SQLAREA WHERE disk_reads > 1000 ORDER BY "Reads/Exec" DESC) WHERE ROWNUM


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3