温馨提示×

ubuntu pgadmin能远程吗

小樊
34
2026-10-24 07:42:46
栏目: 智能运维

可以的,PgAdmin 是可以远程连接 PostgreSQL 的,不过在 Ubuntu 上要注意几个关键点。


一、PgAdmin 本身是“客户端”

PgAdmin(不管是 PgAdmin 4 桌面版 还是 Web 版)本质是一个 PostgreSQL 客户端,它不限制你连本地还是远程数据库。

只要:

  • 远程 PostgreSQL 允许连接
  • 网络可达
  • 账号权限正确

就可以在 Ubuntu 上用 PgAdmin 远程管理其他服务器上的 PostgreSQL。


二、远程连接必须满足的条件

1️⃣ PostgreSQL 允许远程连接

在 PostgreSQL 服务器上修改:

postgresql.conf

listen_addresses = '*'

pg_hba.conf 例如允许某个 IP:

host    all    all    0.0.0.0/0    md5

(生产环境建议限制 IP)

修改后重启:

sudo systemctl restart postgresql

2️⃣ 防火墙 / 安全组

确保 5432 端口开放:

sudo ufw allow 5432

云服务器还要在安全组放行 5432。


3️⃣ PgAdmin 中添加远程服务器

在 PgAdmin 中:

  • 右键 Servers → Register → Server
  • Host name:远程IP
  • Port:5432
  • Username / Password:数据库账号

三、Ubuntu 上 PgAdmin 的两种形式

✅ 方式 1:PgAdmin 4 桌面版(推荐)

sudo apt install pgadmin4-desktop

适合个人远程管理数据库。


✅ 方式 2:PgAdmin 4 Web 版

sudo apt install pgadmin4-web
sudo /usr/pgadmin4/bin/setup-web.sh

可通过浏览器访问,本身也可被远程访问(需注意安全)。


四、常见问题

❌ 连不上通常原因:

  • PostgreSQL 只监听 localhost
  • 防火墙没开
  • pg_hba.conf 没配
  • 云服务器安全组没放行
  • SSL / 密码认证方式不对

五、安全建议(重要)

  • ❌ 不要 0.0.0.0/0 随便开放
  • ✅ 限制 IP
  • ✅ 使用 SSH 隧道(更推荐)

示例 SSH 隧道:

ssh -L 5432:localhost:5432 user@remote_server

PgAdmin 连 localhost:5432 即可。


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

  • 你是 Ubuntu 本地装 PgAdmin 连远程
  • 还是 Ubuntu 上的 PostgreSQL 被远程连

我可以给你更具体的配置示例。

0 踩