温馨提示×

centos pgadmin怎么备份数据库

小樊
45
2026-09-15 07:58:01
栏目: 智能运维

CentOS 上备份 PostgreSQL 数据库,一般有两种常见方式:


一、使用 pg_dump(推荐,最常用)

1. 基本命令

pg_dump -U 用户名 数据库名 > /备份路径/数据库名.sql

示例:

pg_dump -U postgres mydb > /backup/mydb_$(date +%F).sql

2. 常用参数

-h 主机地址(默认 localhost)
-p 端口(默认 5432)
-F c   自定义格式(压缩)
-f 输出文件

示例(压缩备份):

pg_dump -U postgres -F c -f /backup/mydb.dump mydb

二、使用 pg_dumpall(备份所有数据库)

适合整机迁移或全库备份:

pg_dumpall -U postgres > /backup/all_db.sql

三、CentOS 常见问题处理

1. 提示 peer authentication failed

切换为 postgres 用户:

su - postgres
pg_dump mydb > /backup/mydb.sql

或修改 pg_hba.conf 使用 md5 认证。


2. 定时备份(crontab)

crontab -e

每天 2 点备份:

0 2 * * * /usr/bin/pg_dump -U postgres mydb > /backup/mydb_$(date +\%F).sql

四、如果你用的是 pgAdmin(图形界面)

  1. 打开 pgAdmin
  2. 右键数据库 → Backup
  3. 选择格式(SQL / Custom)
  4. 指定路径 → 点击 Backup

⚠️ pgAdmin 实际也是调用 pg_dump


五、恢复数据库(补充)

psql -U postgres -d mydb < /backup/mydb.sql

或自定义格式:

pg_restore -U postgres -d mydb /backup/mydb.dump

如果你告诉我:

  • PostgreSQL 版本
  • 是否用 Docker
  • 是否只备份某几张表

我可以给你更精确的命令。

0