温馨提示×

如何在Ubuntu上使用pgAdmin管理PostgreSQL

小樊
38
2025-12-06 20:34:51
栏目: 云计算

在 Ubuntu 上使用 pgAdmin 管理 PostgreSQL 的完整步骤


一 环境准备与安装

  • 更新系统并安装数据库与工具:
    • 安装 PostgreSQL:sudo apt update && sudo apt install postgresql postgresql-contrib
    • 启动并设置开机自启:sudo systemctl enable --now postgresql
  • 安装 pgAdmin 4(桌面/服务器均可,二选一或同时安装)
    • APT 仓库安装(推荐,便于更新):
      • 导入 GPG 公钥:curl -fsS https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo gpg --dearmor -o /usr/share/keyrings/packages-pgadmin-org.gpg
      • 添加仓库:echo “deb [signed-by=/usr/share/keyrings/packages-pgadmin-org.gpg] https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main” | sudo tee /etc/apt/sources.list.d/pgadmin4.list
      • 安装:sudo apt update && sudo apt install pgadmin4
    • 使用官方 .deb 包:
      • 下载对应版本 .deb,然后:sudo dpkg -i pgadmin4--linux-x64.deb;若依赖缺失执行:sudo apt -f install
  • 初始化与启动
    • 桌面版:在应用菜单搜索并启动“pgAdmin 4”
    • 服务器版(APT 安装常见):执行 sudo /usr/pgadmin4/bin/setup-web.sh 按向导创建管理员账号;启动/重启服务:sudo systemctl start|restart pgadmin4;访问地址:http://服务器IP:5050

二 配置 PostgreSQL 允许连接

  • 设置 postgres 用户密码(如未设置):sudo -u postgres psql -c “ALTER USER postgres WITH PASSWORD ‘your_password’;”
  • 允许本地与远程密码登录(示例为 Debian/Ubuntu 常见路径,版本号以实际为准,如 /etc/postgresql/14/main/
    • 编辑 pg_hba.conf,添加:
      • 本地密码登录:host all all 127.0.0.1/32 md5
      • 远程密码登录:host all all 0.0.0.0/0 md5
    • 编辑 postgresql.conf,开放监听:listen_addresses = ‘*
    • 重启数据库:sudo systemctl restart postgresql
  • 防火墙放行(如使用 UFW):sudo ufw allow 5432/tcp

三 在 pgAdmin 中创建服务器连接

  • 打开 pgAdmin(桌面应用或浏览器访问 http://服务器IP:5050),登录管理员账号。
  • 左侧“Servers”右键 → Create → Server,填写:
    • General:Name(自定义,如“Ubuntu-PG”)
    • Connection:
      • Host name/address:localhost(本机)或服务器 IP/域名
      • Port:5432
      • Maintenance database:postgres
      • Username:postgres
      • Password:上一步设置的密码
  • 保存后展开“Servers”即可管理数据库、角色、表空间与执行查询。

四 常见问题与排查

  • 无法远程连接
    • 核对 postgresql.conf 中 listen_addresses=‘*’ 与 pg_hba.conf 已允许目标网段;云服务器需确保安全组/防火墙放行 5432/tcp;重启 PostgreSQL 后再试。
  • 浏览器访问 pgAdmin 失败
    • 确认服务运行:sudo systemctl status pgadmin4;若端口被占用或配置变更,重启服务;访问 http://服务器IP:5050 并使用初始化时设置的账号登录。
  • 客户端连接云数据库实例
    • 多数云数据库要求通过公网地址连接,请在控制台为实例绑定公网 IP,并在 pgAdmin 的 Host 填写该 公网 IP,端口 5432,使用实例提供的用户名与密码。

0