如何分析 PostgreSQL 数据库?

发布于 2024-07-09 13:43:48 字数 72 浏览 7 评论 0原文

我想分析(密切关注)PostgreSQL 数据库中发生的所有活动。

有没有这样的实用程序可以帮助我做到这一点?

I want to profile (keep an Eye on) all the activities that goes on in a Database which is in PostgreSQL.

Is there any such utility which will help me do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

对你再特殊 2024-07-16 13:43:49

在我看来,“关注”和“剖析”是两个截然不同的任务。

对于分析(不是实时查看当前正在发生的情况,而是查看哪些查询花费最多时间等),请查看 pgFouine:

http://pgfouine.projects.postgresql.org/

这将让您了解哪些查询是资源密集型的,并采取适当的操作:添加缺少的索引、使用其他技术重写查询等。

"Keep an eye on" and "profile" are two quite different tasks in my view.

For profiling (not a live view on what's going on right now, but to see which queries take most time etc), check out pgFouine:

http://pgfouine.projects.postgresql.org/

This will let you see which queries are resource intensive, and take appropriate action: Add missing indexes, rewrite queries using other techiques etc.

北斗星光 2024-07-16 13:43:49

为了“保持警惕”,我使用 pgtop,一个故意模仿 Unix 'top' 命令的程序。

For "keeping an eye", I use pgtop, a program which deliberately mimics Unix 'top' command.

音盲 2024-07-16 13:43:49

PgBadger 是一个积极维护的分析工具,提供非常详细的报告和图表 (查看示例)。 它可以处理大量 PostgreSQL 日志来回答问题,例如:

  • 最常见的等待查询。
  • 最等待的查询。
  • 最慢的查询。

(PgBadger 的明确构建目的是“取代并超越”pgFouine,后者自 2010 年左右以来就不再维护。)

PgBadger is an actively maintained profiling tool that provides very detailed reports and graphs (see examples). It can process large volumes of PostgreSQL logs to answer questions like:

  • The most frequent waiting queries.
  • Queries that waited the most.
  • The slowest queries.

(PgBadger was explicitly built to "replace and outperform" pgFouine, which has not been maintained since about 2010.)

音栖息无 2024-07-16 13:43:49

好吧,如果你正在查看发生了什么,关于选择、更新、删除等,pg_catalog 架构中有一些视图,我主要使用 pg_stat_user_tablespg_stat_user_indexes 但还有更多,都在 pg_stat* 内。

还有 pg_stat_activity 视图,它告诉您服务器上当前正在运行的内容。

我已经将四个使用 user_tables 和 user_indexes 的 munin 插件组合在一起,它们可以那里

Well, if you're looking at what's going on, regarding selects, updates, deletes, and so on, there are a few views in the pg_catalog schema, I mainly use pg_stat_user_tables and pg_stat_user_indexes but there are many more, all within pg_stat*.

There also is the pg_stat_activity view which tells you what's running on your server right now.

I've hacked together four munin plugins that uses the user_tables and user_indexes, they're available there

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文