温馨提示×

怎么设置CentOS的PostgreSQL端口

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

在 CentOS 上设置或修改 PostgreSQL 端口,一般分为以下几个步骤:


一、确认 PostgreSQL 版本和配置文件路径

常见路径(以 PostgreSQL 14 为例,版本不同路径略有差异):

/var/lib/pgsql/14/data/postgresql.conf

如果你不确定版本,可以查看:

psql --version

或:

find /var/lib/pgsql -name postgresql.conf

二、修改 PostgreSQL 端口

1️⃣ 编辑配置文件

sudo vi /var/lib/pgsql/14/data/postgresql.conf

找到或添加如下配置(默认是 5432):

port = 5432

例如改成:

port = 5433

✅ 注意:去掉前面的 # 注释符


三、允许远程访问(可选)

如果你希望从其他机器访问 PostgreSQL,还需要修改 pg_hba.conf:

sudo vi /var/lib/pgsql/14/data/pg_hba.conf

添加或修改:

host  all  all  0.0.0.0/0  md5

⚠️ 生产环境建议限制 IP,例如:

host  all  all  192.168.1.0/24  md5

四、配置防火墙(非常重要)

CentOS 7+ 默认使用 firewalld

1️⃣ 开放新端口(如 5433)

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

2️⃣ 验证

sudo firewall-cmd --list-ports

五、重启 PostgreSQL 服务

sudo systemctl restart postgresql-14

查看状态:

sudo systemctl status postgresql-14

六、验证端口是否生效

ss -lntp | grep postgres

或:

netstat -lntp | grep postgres

七、客户端连接方式

psql -h 127.0.0.1 -p 5433 -U username -d dbname

常见问题

❓ 改了端口还是连不上?

  • 检查 postgresql.conf 是否生效
  • 检查 pg_hba.conf
  • 检查防火墙
  • 检查 SELinux(少见但可能)

临时关闭 SELinux 测试:

setenforce 0

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

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

我可以给你一套完全匹配你环境的配置方案 ✅

0 踩