PostgreSQL 如何查找TOP SQL (例如IO消耗最高的SQL) (包含SQL优化内容)
目录 背景 一、安装pg_stat_statements 二、加载pg_stat_statements模块 三、配置pg_stat_statements采样参数 四、创建pg_stat_statements extension 五、分析TOP SQL pg_stat_statements输出内容介绍 最耗IO SQL 最耗时 SQL 响应时间抖动最严重 SQL 最耗共享内存 SQL 最耗临时空间 SQL 六、重置统计信息 慢SQL到底慢在哪里? 七、慢SQL、TOP SQL优化示例 八、常见优化点汇总 参考 背景 数据库是较大型的应用,对于繁忙的数据库,需要消耗大量的内存、CPU、IO、网络资源。 SQL优化是数据库优化的手段之一,优化什么SQL效果最佳呢?首先要了解最耗费资源的SQL,即TOP SQL。 从哪里可以了解数据库的资源都被哪些SQL消耗掉了呢? 资源分为多个维度,CPU,内存,IO等。如何能了解各个维度层面的TOP SQL呢? pg_stat_statements插件可以用于统计数据库的资源开销,分析TOP SQL。 一、安装pg_stat_statements 如果您使用的是云数据库,跳过安装,到create extension 部分。 pg_stat_statements是PostgreSQL的核心插件之一。可以在编译PostgreSQL时安装,也可以单独安装。