SQL调优顾问:全面指南
1. 资源排名指标与内存中资源密集型SQL的查看
在SQL性能优化中,了解SQL语句消耗的资源情况是关键。有多个资源排名指标可以衡量SQL语句的资源消耗,具体如下表所示:
| 资源排名指标 | 单位 |
| — | — |
| cpu_time | 秒 |
| elapsed_time | 秒 |
| disk_reads | 磁盘读取次数 |
| buffer_gets | 内存读取次数 |
| rows_processed | 平均行数 |
| optimizer_cost | 计算出的优化器成本 |
| executions | SQL语句的总执行次数 |
这些指标可用于在自动工作量存储库(AWR)和内存中筛选SQL语句。下面介绍如何查看内存中资源密集型的SQL语句。
使用 DBMS_SQLTUNE.SELECT_CURSOR_CACHE 函数可以查看当前内存中高资源消耗的SQL语句。以下是几个示例:
- 查询磁盘读取次数超过100万的SQL语句
SELECT
sql_id
, substr(sql_text,1,20)
, disk_reads
, cpu_time
, elapsed_time
FROM table(DBMS_SQLTUNE.SELECT_CURSOR_CACHE('disk_reads > 1000000'))
ORDER BY sql_id;
超级会员免费看
订阅专栏 解锁全文
3595

被折叠的 条评论
为什么被折叠?



