温馨提示×

如何备份Linux上pgAdmin的数据

小樊
36
2025-11-26 05:09:10
栏目: 智能运维

Linux上备份pgAdmin的数据

一 备份范围与总体策略

  • 需要同时覆盖两类数据:
    • pgAdmin自身的配置与元数据:服务器连接、用户收藏、仪表板、作业等(存放在配置与数据目录中)。
    • 被管理的PostgreSQL数据库:业务数据本身(使用逻辑或物理备份工具)。
  • 建议采用“定期自动化备份 + 异地/云端存储 + 定期恢复演练”的策略,明确备份周期保留时间,并在低峰时段执行,先在非生产环境验证流程与可用性。

二 备份pgAdmin配置与元数据

  • 常见安装方式及目录(以实际环境为准):
    • 包管理安装(如deb/rpm):配置多在**/etc/pgadmin4/,数据与存储多在/var/lib/pgadmin4/;日志常见在/var/log/pgadmin4/**。
    • Python/pip安装或以当前用户运行:配置与数据通常在**~/.pgadmin4/**。
  • 备份操作示例(按你的实际路径调整):
    • 打包配置与数据目录:
      • sudo tar czf pgadmin4-backup-$(date +%F).tgz /etc/pgadmin4 /var/lib/pgadmin4
      • 或仅备份用户目录:tar czf pgadmin4-user-backup-$(date +%F).tgz ~/.pgadmin4
    • 使用rsync增量同步到备份主机/NAS/云存储:
      • rsync -a --delete ~/.pgadmin4/ backup@backup-host:/backup/pgadmin4/
  • 迁移或恢复时,将上述目录复制到目标机器的相同路径或用环境变量/配置文件指向新位置,再启动pgAdmin服务。

三 备份被管理的PostgreSQL数据库

  • 逻辑备份(推荐用于常规业务库,灵活、可跨版本迁移):
    • 使用pg_dump导出为SQL脚本或自定义归档:
      • pg_dump -h localhost -U postgres -F c -b -v -f mydb.dump mydb
    • 恢复:
      • 新建空库后:pg_restore -h localhost -U postgres -d mydb mydb.dump
  • 物理备份(适合整实例、快速恢复的场景):
    • 使用pg_basebackup做基础备份:
      • pg_basebackup -h localhost -U postgres -D /path/to/backup -P -X stream -R
  • 也可在pgAdmin图形界面执行“备份/恢复”(右键数据库选择相应操作),适合临时或小规模任务。

四 自动化与验证

  • 定时备份示例(crontab):
    • 每天凌晨2点备份业务库为SQL脚本,保留7天
      • 0 2 * * * /usr/bin/pg_dump -h localhost -U postgres mydb > /backup/mydb_$(date +%F).sql && find /backup -name “mydb_*.sql” -mtime +7 -delete
    • 每周一备份pgAdmin配置与数据:
      • 0 3 * * 1 tar czf /backup/pgadmin4-$(date +%F).tgz /etc/pgadmin4 /var/lib/pgadmin4
  • 备份有效性验证:
    • 定期在测试环境执行恢复演练,校验数据一致性与可用性;对含敏感数据的备份进行加密访问控制,并存放于安全位置(本地/离线/云)。

0