温馨提示×

CentOS下怎么查看PostgreSQL状态

小樊
67
2026-07-09 17:27:42
栏目: 云计算

CentOS 下查看 PostgreSQL 状态,常用方法如下(按使用频率排序):


一、使用 systemctl(最常见,推荐)

适用于 CentOS 7 / 8 / Stream,PostgreSQL 以 systemd 服务方式运行。

1️⃣ 查看 PostgreSQL 服务状态

systemctl status postgresql

如果是多版本或自定义服务名,可能是:

systemctl status postgresql-14
systemctl status postgresql-15

✅ 状态说明:

  • active (running):正在运行
  • inactive (dead):未运行
  • failed:启动失败

2️⃣ 查看是否开机自启

systemctl is-enabled postgresql

二、使用 ps 查看进程

ps -ef | grep postgres

常见进程示例:

/usr/pgsql-14/bin/postgres -D /var/lib/pgsql/14/data

✅ 能看到进程说明 PostgreSQL 正在运行。


三、使用 pg_isready(最专业)

pg_isready 是 PostgreSQL 自带的工具,用于检查数据库是否可接受连接。

pg_isready

输出示例:

/var/run/postgresql:5432 - accepting connections

常见返回:

  • accepting connections ✅ 正常
  • no response ❌ 未启动或端口不通

四、查看监听端口(确认是否监听)

ss -lntp | grep 5432

netstat -lntp | grep 5432

默认端口是 5432


五、登录数据库确认状态

su - postgres
psql

进入后执行:

SELECT version();

✅ 能正常执行说明数据库运行正常。


六、查看 PostgreSQL 日志(排查问题)

日志位置通常在:

/var/lib/pgsql/14/data/log/

或查看配置文件:

postgresql.conf

七、常见服务管理命令(补充)

# 启动
systemctl start postgresql

# 停止
systemctl stop postgresql

# 重启
systemctl restart postgresql

✅ 推荐组合检查

systemctl status postgresql
pg_isready

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

  • CentOS 版本
  • PostgreSQL 版本
  • 是源码安装还是 yum 安装

我可以给你更精确的命令。

0