Linux上配置pgAdmin网络需从数据库服务端和pgAdmin客户端两方面设置,核心步骤如下:
修改PostgreSQL监听地址
编辑配置文件 /etc/postgresql/<版本>/main/postgresql.conf,找到 listen_addresses 并设置为 '*'(允许所有IP连接)或指定具体IP。
sudo nano /etc/postgresql/15/main/postgresql.conf
# 修改为:listen_addresses = '*'
sudo systemctl restart postgresql # 重启服务生效
配置客户端认证规则
编辑 /etc/postgresql/<版本>/main/pg_hba.conf,添加允许远程连接的规则(如允许所有IP通过密码认证):
sudo nano /etc/postgresql/15/main/pg_hba.conf
# 添加:host all all 0.0.0.0/0 md5
sudo systemctl restart postgresql
开放防火墙端口
若使用 ufw 或 firewalld,需放行PostgreSQL默认端口(5432):
sudo ufw allow 5432/tcp # Ubuntu/Debian
sudo firewall-cmd --add-port=5432/tcp --permanent # CentOS/RHEL
sudo firewall-cmd --reload
修改pgAdmin监听设置(可选)
若需通过Web访问pgAdmin,编辑其配置文件 /etc/pgadmin/pgadmin.conf,设置监听地址和端口(默认80或自定义):
sudo nano /etc/pgadmin/pgadmin.conf
# 修改:Listen_Address = '0.0.0.0' # 允许所有IP访问
# Port = 80 # 默认端口(可自定义,需与防火墙一致)
sudo systemctl restart pgadmin4
添加数据库服务器连接
在pgAdmin界面中,通过 Servers → Create → Server 输入目标服务器的IP、端口(默认5432)、用户名和密码即可。
psql 命令行或pgAdmin界面测试连接,确保能正常访问数据库。注意:生产环境中建议限制IP访问(如仅允许可信IP),并使用SSL加密连接。具体步骤可能因Linux发行版和pgAdmin版本略有差异,可参考官方文档。