Repolode
dalibo

dalibo/pg_activity

类似 top 的命令行工具,用于实时监控 PostgreSQL 服务器的活动、会话和正在运行的查询。

Star
3,051
Fork
196
未关闭 Issue
18
最近提交
上个月

这是什么?

pg_activity 是一个在终端中运行的 PostgreSQL 活动监控工具,界面风格类似 top。它以表格形式列出当前的后台进程及其查询、执行时长、CPU 和内存占用以及读写速率,并可在运行中、等待中和阻塞中的查询列表之间切换。

用户可以在界面中按读写速率、CPU 或时间排序,暂停刷新,将选中的查询复制到剪贴板,或直接终止、取消指定后台进程。工具支持本地和远程连接,接受标准 libpq 连接字符串。它还支持配置文件和内置的 narrow、wide、minimal 等配置方案,用于控制显示哪些列和头部信息,并提供按数据库名过滤、将运行查询导出为 CSV,以及 AWS RDS 支持。

可通过 Linux 发行版软件包、PyPI(配合 psycopg)或源码安装,支持 Python 3.10 及以上版本。

核心功能

  • 01实时展示 PostgreSQL 后台进程,包括查询、执行时长、CPU、内存和读写速率。
  • 02可在运行中、等待中和阻塞中的查询视图之间切换。
  • 03在界面中直接终止或取消后台进程。
  • 04支持自定义显示列和内置显示配置方案。
  • 05可按数据库名过滤,并将运行中的查询导出为 CSV。

适用场景

  • 在生产 PostgreSQL 服务器上排查慢查询或锁等待问题。
  • 通过 SSH 连接远程数据库主机,实时观察连接和 I/O 活动。
  • 在故障期间找出阻塞其他会话的进程。

快速上手

  1. 1

    通过 PyPI 安装并包含 psycopg

    python3 -m pip install "pg_activity[psycopg]"
  2. 2

    以 postgres 用户在本地服务器上运行

    sudo -u postgres pg_activity -U postgres

使用前须知

  • 需要具有超级用户权限的 PostgreSQL 用户才能获取完整数据,否则以降级模式运行。

收录于专题

标签

常见问题

pg_activity 是什么?
类似 top 的命令行工具,用于实时监控 PostgreSQL 服务器的活动、会话和正在运行的查询。 pg_activity 是一个在终端中运行的 PostgreSQL 活动监控工具,界面风格类似 top。它以表格形式列出当前的后台进程及其查询、执行时长、CPU 和内存占用以及读写速率,并可在运行中、等待中和阻塞中的查询列表之间切换。
pg_activity 可以免费使用吗?用的什么许可证?
pg_activity 以 PostgreSQL 许可证开源。用于商业产品前,请先确认许可证条款。
pg_activity 还在维护吗?
半年内有更新。pg_activity 最近一次提交是在 2026年9月21日。
pg_activity 适合用来做什么?
在生产 PostgreSQL 服务器上排查慢查询或锁等待问题。 通过 SSH 连接远程数据库主机,实时观察连接和 I/O 活动。 在故障期间找出阻塞其他会话的进程。
pg_activity 怎么安装和运行?
通过 PyPI 安装并包含 psycopg: python3 -m pip install "pg_activity[psycopg]" 以 postgres 用户在本地服务器上运行: sudo -u postgres pg_activity -U postgres
在哪里获取 pg_activity?
源代码和安装说明在 GitHub 上:https://github.com/dalibo/pg_activity

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目