温馨提示×

怎么用linux pgadmin恢复

小樊
55
2026-10-09 09:50:15
栏目: 智能运维

你说的 “Linux 下用 pgAdmin 恢复”,一般是指 在 Linux 系统上通过 pgAdmin 恢复 PostgreSQL 数据库(备份文件)。下面按常见场景给你说明。


一、前提条件(先确认)

  1. Linux 已安装 PostgreSQL
  2. 已安装 pgAdmin(pgAdmin 4,通常是 Web 或桌面版)
  3. 有数据库备份文件,常见格式:
    • .sql(文本备份)
    • .backup / .dump(自定义格式,pg_dump -Fc)

二、用 pgAdmin 恢复数据库(图形界面)

方法 1:恢复到已有数据库

  1. 打开 pgAdmin,连接到 PostgreSQL 服务器
  2. 左侧树形菜单:
    Servers → 你的服务器 → Databases → 目标数据库
    
  3. 右键目标数据库 → Restore…
  4. 在弹窗中:
    • File:选择备份文件(如 /home/user/db.backup)
    • Format:
      • Custom / Tar → 选 Custom or tar
      • SQL 文件 → 选 Plain
  5. 点击 Restore
  6. 等待完成,查看 Logs 是否有错误

方法 2:先新建数据库再恢复

如果目标库不存在:

  1. 右键 Databases → Create → Database
  2. 设置数据库名、Owner
  3. 再按“方法 1”恢复

三、常见恢复选项说明

在 Restore 界面中:

  • Sections
    • Pre-data / Data / Post-data(一般全选)
  • Objects
    • 可只恢复表、索引等
  • Do not save:
    • 可不恢复 Owner、Privileges(迁移时有用)

四、Linux 命令行恢复(pgAdmin 不行时的替代)

有时 pgAdmin 恢复会失败,推荐命令行:

# 自定义格式
pg_restore -U postgres -d dbname /path/to/db.backup

# SQL 文件
psql -U postgres -d dbname -f /path/to/db.sql

五、常见错误与解决

错误 原因 解决
permission denied 文件权限 chmod 644 backup.file
role does not exist 原库用户不存在 先创建用户
already exists 表已存在 勾选“Clean”或换空库

如果你能告诉我:

  • pgAdmin 版本
  • 备份文件类型(.sql / .backup)
  • 报错信息

我可以给你更精确的步骤。

0 踩