pg_activity 技术文档
pg_activity 是一个强大的命令行工具,专门用于监控 PostgreSQL 数据库服务器的活动状态。此工具允许用户深入了解数据库的实时查询执行情况、系统资源使用和其他关键指标,是DBA和开发者优化数据库性能的强大助手。
安装指南
从发行版包管理器安装
对于基于Debian的操作系统(如Debian, Ubuntu, Linux Mint等),你可以简单地通过APT来安装pg_activity:
sudo apt install pg-activity
在某些版本的Debian上,可能需要从backports添加pg_activity,例如:
sudo apt install pg-activity/bullseye-backports
此外,PostgreSQL全球开发团队为RPM基础(通过yum.postgresql.org)和Debian基础(参阅PostgreSQL Wiki上的Apt页面)提供了软件包支持。
从PyPI安装
如果你倾向于使用最新版本或者运行Python 3.8或更高版本的环境,可以通过pip安装pg_activity,并确保安装psycopg驱动:
python3 -m pip install "pg_activity[psycopg]"
也可以利用pipx来创建隔离的运行环境:
pipx install "pg_activity[psycopg]"
在安装后,pg_activity通常位于~/.local/bin/pg_activity
,请确保该路径包含在你的PATH变量中。
从源代码安装
若要测试开发版或进行更深层次的定制,首先克隆GitHub仓库:
git clone https://github.com/dalibo/pg_activity.git
然后在项目根目录下创建并激活虚拟环境,并安装依赖项:
cd pg_activity
python3 -m venv .venv
source .venv/bin/activate
pip install ".[psycopg]"
要退出虚拟环境,可以执行以下命令:
deactivate
rm -r .venv
使用说明
pg_activity可以在本地或远程连接到PostgreSQL服务器。为了展示系统信息,当在本地运行时,执行pg_activity的用户应当与运行PostgreSQL服务的用户相同(通常是postgres
)。连接数据库的用户应具备超级用户权限以获取完整数据。
示例命令:
sudo -u postgres pg_activity -U postgres
命令行选项
pg_activity提供了一系列参数来自定义报告,包括但不限于筛选特定的数据库活动、控制显示的列、以及设置刷新频率等。详细使用方法和选项可以在命令行使用--help
查看。
API使用文档
尽管pg_activity主要是作为一个CLI工具设计的,但其内在逻辑可以通过模块导入在Python脚本中调用,这要求深入研究项目源码并理解其内部函数接口。当前文档未直接提供API接口详情,实际应用需参照源码实现细节。
注意事项
- 确保
track_activity_query_size
配置足够大,避免SQL查询文本被截断。 - 使用配置文件
pg_activity.conf
或配置概要文件来定制显示选项和行为。
交互式操作
pg_activity提供了键盘快捷键来动态调整视图和排序,比如按'r'键按读取速率排序,使用'T'键切换不同的持续时间显示模式等,提高了监控的交互性和便捷性。
通过这份文档,用户能够理解和运用pg_activity来有效监控和管理他们的PostgreSQL数据库活动,从而做出相应的性能调优决策。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考