POSTGRESQL AUTO_EXPLAIN 记录慢语句的执行计划
在PostgreSQL中,可以通过设置auto_explain
模块来记录慢SQL的执行计划。以下是如何配置和使用auto_explain
的步骤:
- 确认
auto_explain
模块在PostgreSQL中已经被加载。如果没有加载,可以通过以下命令加载:
CREATE EXTENSION auto_explain;
- 设置
auto_explain
的阈值,以控制哪些查询需要被解释。例如,设置执行时间超过1秒的查询:
SET auto_explain.threshold = '1s';
- 可以选择性地设置其他
auto_explain
参数,如记录到文件或服务器日志:
-- 输出到日志文件
SET auto_explain.log_min_duration = '1s';
SET auto_explain.log_level = 'LOG';
SET auto_explain.log_analyze = true;
SET auto_explain.log_timing = true;
SET auto_explain.log_buffers = true;
SET auto_explain.log_format = 'text';
- 在
postgresql.conf
文件中永久设置以上参数,以便在数据库重启后依然生效。
请注意,开启auto_explain
可能会对性能产生影响,因此应该只在需要进行性能分析时临时启用。
评论已关闭