温馨提示×

PgAdmin怎么备份CentOS数据

小樊
46
2026-07-20 20:04:21
栏目: 智能运维

CentOS 上用 pgAdmin 备份 PostgreSQL 数据库,本质是通过 pgAdmin 调用 pg_dump 工具来完成。下面按最常用、最稳妥的方式一步步说明。


一、前提条件

  1. PostgreSQL 已安装在 CentOS 上
  2. pgAdmin 已连接该数据库
    • 如果是 pgAdmin 4(Web 版)
    • 如果是 本地 pgAdmin 连接远程 CentOS

二、使用 pgAdmin 备份数据库(推荐方式)

✅ 步骤 1:打开 pgAdmin 并连接数据库

  1. 登录 pgAdmin
  2. 左侧树形菜单中展开:
    Servers
      └── 你的服务器
            └── Databases
                  └── 要备份的数据库
    

✅ 步骤 2:开始备份

  1. 右键点击要备份的数据库
  2. 选择:
    Backup...
    

✅ 步骤 3:配置备份参数(重点)

1️⃣ Filename(备份文件路径)

  • 例如:
    /home/postgres/backup/mydb_2026.sql
    

⚠️ 注意

  • 该路径必须是 CentOS 服务器上 PostgreSQL 用户(通常是 postgres)有权限写入的目录
  • 建议在:
    /var/lib/pgsql/backup/
    /home/postgres/backup/
    

2️⃣ Format(备份格式,非常重要)

格式 说明 推荐
Custom .dump,支持并行恢复 ✅ 推荐
Plain .sql,可读文本 ✅ 通用
Directory 目录格式 大数据
Tar tar 包 少见

一般选择:

  • Custom(-Fc)(最常用)
  • Plain(-Fp)(SQL 文件)

3️⃣ 其他选项

  • Encoding:UTF8(默认即可)
  • Only schema:❌ 不勾(否则只备份表结构)
  • Sections:保持默认(全部)

✅ 步骤 4:执行备份

  • 点击 Backup
  • 成功后你会看到:
    Backup completed successfully
    

三、在 CentOS 上确认备份文件

ls -lh /home/postgres/backup/

示例:

mydb_2026.dump

四、命令行方式(pgAdmin 本质也是这个)

如果你在 CentOS 服务器上操作,也可以直接用:

1️⃣ 切换 postgres 用户

su - postgres

2️⃣ 备份数据库

pg_dump -U postgres -F c mydb > mydb_2026.dump

或 SQL 格式:

pg_dump -U postgres -F p mydb > mydb_2026.sql

五、常见错误与解决办法

❌ 错误 1:permission denied

原因:pgAdmin 用的是 postgres 用户,没权限写目录
✅ 解决:

mkdir -p /home/postgres/backup
chown postgres:postgres /home/postgres/backup

❌ 错误 2:pg_dump 版本不一致

pg_dump: error: server version: 15; pg_dump version: 13

✅ 解决:

  • pgAdmin 和 PostgreSQL 使用 同版本 pg_dump
  • 升级 pgAdmin 或指定正确路径

六、恢复数据库(补充)

在 pgAdmin 中:

  1. 右键数据库 → Restore
  2. 选择 .dump.sql
  3. 执行即可

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

  • ✅ pgAdmin 是 本地还是服务器?
  • ✅ PostgreSQL 版本
  • ✅ 想备份 单个库 / 全部库 / 表结构

我可以给你最合适的具体命令和参数

0