如何找到消耗最多的 postgresql 查询 I/O
How to find postgresql query which is consuming the most I/O
假设我有这样一个 iotop
视图:
怎么找到这里打硬盘这么重的SELECT
?
准备:
编辑postgresql.conf
:
将 pg_stat_statements
添加到 shared_preload_libraries
并重新启动 PostgreSQL。
设置track_io_timing = on
.
现在暂时让工作量运行。
然后找到你的 I/O 猪:
SELECT query
FROM pg_stat_statements
ORDER BY blk_read_time + blk_write_time DESC
LIMIT 1;
假设我有这样一个 iotop
视图:
怎么找到这里打硬盘这么重的SELECT
?
准备:
编辑postgresql.conf
:
将
pg_stat_statements
添加到shared_preload_libraries
并重新启动 PostgreSQL。设置
track_io_timing = on
.
现在暂时让工作量运行。
然后找到你的 I/O 猪:
SELECT query
FROM pg_stat_statements
ORDER BY blk_read_time + blk_write_time DESC
LIMIT 1;