use*_*809 9 postgresql performance
我的数据库应用程序运行许多不同的查询。我已设置log_min_duration_statement
为 1000。但记录在那里的查询并不总是很慢,大多数情况下它们只需要几毫秒。
是否可以获得所有查询的统计信息,以及它们花费超过 1000 毫秒的频率?
Joi*_*dio 10
使用 SQL 命令安装扩展 pg_stat_statements
CREATE EXTENSION pg_stat_statements
您可能希望确保使用适当的用户(例如您的应用程序使用的用户或某些 dba 帐户)来创建它。请注意,任何创建扩展的用户也将拥有它。
这将需要重新启动服务器才能使用(因为您必须稍微更改 postgresql.conf 中的配置以影响内存消耗),但它会为您提供所有查询的统计信息。
有关 pg_stat_statements 提供的内容的更多信息,请参阅文档页面。有关pg_stat_statements 的 postgresql.conf 配置文件配置的快速参考,请参见此处。
安装并运行后,您可以通过查询 pg_stat_statements 视图来查看统计信息。
select * from pg_stat_statements;
-- or
select * from pg_stat_statements where total_time / calls > 200; -- etc ..
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
15008 次 |
最近记录: |