暂无图片
为什么 pg_stat_statements 的 query 列的值都是 null?
我来答
分享
暂无图片 匿名用户
为什么 pg_stat_statements 的 query 列的值都是 null?

为什么 pg_stat_statements 的 query 列的值都是 null?

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
彭冲

pg_stat_statements是深入分析PG数据库性能的一个插件,从11版本开始它提供了归一化的查询ID,相比pg_stat_activity里的query,pg_stat_statements里的一些query会使用磁盘进行存储而不会消耗共享内存,但如果累积的长query过于巨大,外部磁盘存储文件可能会无法管理。此时pg_stat_statement插件会选择丢弃query,同时pg_stat_statement视图中现有数据的query也会被置成null,不过query相关的统计信息是保留的,只是query被丢弃了,使用pg_stat_statements_reset()后可以恢复。

暂无图片 评论
暂无图片 有用 0
P
pgdba

pg_stat_statements 模块提供一种方法追踪一个服务器所执行的所有 SQL 语句的执行统计信息。

由于安全性原因,只有超级用户和 pg_read_all_stats 角色的成员被允许看到其他用户执行的查询 的 SQL 文本或者queryid。 不过,如果该视图被安装在其他用户的数据库中,那么他们就能够看见统 计信息。

暂无图片 评论
暂无图片 有用 0
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏