温馨提示×

CentOS如何启动PostgreSQL

小樊
47
2026-07-09 17:07:43
栏目: 云计算

CentOS 上启动 PostgreSQL,常见做法取决于你是通过 系统仓库 还是 官方 RPM 安装的。下面按最常见场景说明。


一、使用 systemd 启动(最常见)

1️⃣ 查看 PostgreSQL 服务名

不同版本服务名可能不同:

systemctl list-unit-files | grep postgres

常见服务名:

  • postgresql(系统自带)
  • postgresql-15
  • postgresql-14
  • postgresql-13

2️⃣ 启动 PostgreSQL

sudo systemctl start postgresql

如果是特定版本:

sudo systemctl start postgresql-15

3️⃣ 设置开机自启

sudo systemctl enable postgresql

4️⃣ 查看运行状态

sudo systemctl status postgresql

看到 active (running) 表示启动成功。


二、初始化数据库(如果还没初始化)

有些版本安装后需要手动初始化数据库。

CentOS 7 / 8 / Stream

sudo postgresql-setup initdb

或指定版本:

sudo postgresql-15-setup initdb

然后再启动:

sudo systemctl start postgresql-15

三、使用 postgres 用户登录数据库

PostgreSQL 默认禁止 root 直接登录。

sudo -i -u postgres
psql

或一行命令:

sudo -u postgres psql

四、常见问题排查

1️⃣ 端口未监听(默认 5432)

ss -lntp | grep 5432

2️⃣ 启动失败查看日志

journalctl -u postgresql -xe

或查看数据目录日志:

/var/lib/pgsql/data/log/

3️⃣ 防火墙放行(远程访问)

sudo firewall-cmd --add-port=5432/tcp --permanent
sudo firewall-cmd --reload

五、不同安装方式说明

安装方式 启动方式
yum/dnf 安装 systemctl
官方 RPM systemctl
编译安装 手动 pg_ctl

六、示例(CentOS 7 + PostgreSQL 13)

sudo yum install postgresql13-server
sudo /usr/pgsql-13/bin/postgresql-13-setup initdb
sudo systemctl enable postgresql-13
sudo systemctl start postgresql-13

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

  • ✅ CentOS 版本(7 / 8 / Stream)
  • ✅ PostgreSQL 版本
  • ✅ 是否是远程访问

我可以给你精确到命令级别的操作步骤。

0