PostgreSQL pg_stat_statements

1 背景知识

pg_stat_statements 插件可以记录 PostgreSQL 中所有SQL 语句的执行计划、执行语句的统计信息。

由于 pg_stat_statements 插件需要使用共享内存,所以在 postgresql.conf 中进行配置 shared_preload_libraries 参数并重启数据库。

除此之外还需要启用 compute_query_id 参数用于自动查询标识符。

pg_stat_statements 插件开启之后,将会记录所有SQL 语句的统计信息,并提供以下视图和函数方便查询使用。

  1. pg_stat_statements 视图
  2. pg_stat_statements_info 视图
  3. pg_stat_statements_reset 函数
  4. pg_stat_statements 函数

这些视图和函数不是全局开启的,通过 CREATE EXTENSION pg_stat_statements 语句为特定数据库启用。

2 pg_stat_statements 实战

PostgreSQL pg_stat_statements 安装与配置
PostgreSQL pg_stat_statements 参数
PostgreSQL pg_stat_statements pgbench基准测试
PostgreSQL pg_stat_statements TPCC性能测试

3 参考连接

PostgreSQL: Documentation: 16: F.32. pg_stat_statements — track statistics of SQL planning and execution