Postgresql慢 - 如何最好地开始调优?

时间:2014-08-07 01:14:02

标签: performance postgresql

我的postgresql服务器似乎间歇性地下降。我前面有PgBouncer池,所以网站点击管理得很好,或直到最近。

当我通过top命令探索了什么时,我看到postmaster做了一些CLUSTER。但是我的任何一个cronjobs中都没有集群命令。这是最近被称为autovacuum的内容吗?

我怎样才能开始了解发生了什么。什么命令是PGSQL DBA工具箱中常用的技巧?我对这个数据库有点新意,只是寻找起点。

谢谢!

1 个答案:

答案 0 :(得分:3)

不,autovacuum永远不会运行CLUSTER。你的系统上有一些东西可以做 - 守护进程,cron作业等等。检查个人用户crontabs。

CLUSTER对表进行独占锁定。所以,这可能就是为什么你认为这个系统正在下降" - 访问此表的所有查询都将等待CLUSTER完成。

人们报告间歇性问题的另一个常见原因是检查点在慢速磁盘上花费很长时间。您可以启用检查点日志记录以查看是否存在问题。有很多关于检查点性能问题的现有信息,所以我不会在这里重复。

其他关键工具是:

  • pg_stat_activitypg_locks观看次数
  • pg_stat_statements
  • PostgreSQL日志,启用了有用的log_line_prefixlog_checkpointslog_min_duration_statement
  • auto_explain