温馨提示×

centos pgadmin如何监控

小樊
43
2026-09-18 08:04:33
栏目: 智能运维

在 CentOS 上,如果你说的是 PgAdmin(pgAdmin 4)监控 PostgreSQL,可以从 PgAdmin 自带功能、系统层监控、数据库层监控 三个层面来做。下面按实用方式说明。


一、PgAdmin 4 自带的监控方式(最常用)

1. 查看 Dashboard(仪表盘)

PgAdmin 4 自带 Dashboard,适合快速监控:

  • 打开 PgAdmin
  • 连接 PostgreSQL 服务器
  • 左侧选中 Server
  • 右侧点击 Dashboard

可看到:

  • 实时 连接数
  • 每秒事务数(TPS)
  • 锁情况
  • 数据库大小
  • 慢查询趋势

✅ 适合:日常查看、初步定位问题


2. 使用 Statistics 面板

路径:

Server → Databases → 某个库 → Statistics

可查看:

  • 表扫描次数
  • 索引命中率
  • 插入 / 更新 / 删除次数
  • 连接会话数

3. 查看当前连接和锁

SQL 工具中执行:

SELECT * FROM pg_stat_activity;

查看:

  • 当前连接
  • 执行的 SQL
  • 等待事件(wait_event)
  • 死锁或长时间事务

二、CentOS 系统层监控(必须做)

PgAdmin 只管数据库,系统资源也要看。

1. CPU / 内存 / 磁盘

top
htop
free -h
df -h
iostat -x 1

安装:

yum install -y htop sysstat

2. 查看 PostgreSQL 进程

ps aux | grep postgres

重点看:

  • postmaster
  • 是否有大量 idle in transaction

3. 日志监控(非常重要)

PostgreSQL 日志位置(常见):

/var/lib/pgsql/13/data/log/

实时查看:

tail -f /var/lib/pgsql/13/data/log/postgresql-*.log

可监控:

  • 慢查询
  • 连接失败
  • 锁等待
  • OOM

三、PostgreSQL 自身监控(进阶)

1. 开启慢查询日志

编辑:

vi /var/lib/pgsql/13/data/postgresql.conf

修改:

logging_collector = on
log_min_duration_statement = 1000  # 1秒
log_statement = 'none'

重启:

systemctl restart postgresql-13

2. 常用监控 SQL

连接数

SELECT count(*) FROM pg_stat_activity;

最耗资源的 SQL

SELECT query, calls, total_exec_time
FROM pg_stat_statements
ORDER BY total_exec_time DESC
LIMIT 10;

(需开启 pg_stat_statements 扩展)


四、配合监控工具(生产推荐)

方案 1:PgAdmin + Prometheus + Grafana

  • PostgreSQL Exporter
  • Grafana 看板
  • 长期趋势分析

方案 2:Zabbix

  • 监控 CentOS
  • 监控 PostgreSQL 模板

五、总结(快速建议)

场景 推荐方式
日常查看 PgAdmin Dashboard
慢 SQL 日志 + pg_stat_statements
系统问题 top / iostat / 日志
生产环境 PgAdmin + Grafana

如果你愿意,可以告诉我:

  • CentOS 版本
  • PostgreSQL 版本
  • 是 PgAdmin 本地安装还是Web版
  • 想监控 性能 / 连接 / 慢SQL / 告警

我可以给你一套 更精确的操作步骤或脚本。

0 踩