使用pgAdmin图形界面在Linux上备份PostgreSQL数据库
逻辑备份通过SQL语句导出数据库的表结构和数据,兼容性强,适合跨版本迁移。
mydatabase)。/home/user/backups)并命名(如mydatabase_backup.sql)。若需备份服务器上的所有数据库(包括用户、角色等系统对象),可使用pg_dumpall命令(需以postgres用户身份运行):
sudo -i -u postgres切换至postgres用户(无需密码,若设置了密码则需输入)。pg_dumpall -U postgres -f /path/to/all_databases_backup.sql(将/path/to/替换为实际保存路径),按提示输入postgres用户的密码。备份完成后,所有数据库的结构和数据将保存到指定文件中。postgres或拥有BACKUP权限的普通用户)具有访问目标数据库的权限。pg_dump或pg_dumpall命令)并结合cron定时任务(如每天凌晨2点执行),实现自动备份。例如,脚本内容如下:#!/bin/bash
export PGPASSWORD="your_db_password"
pg_dump -h localhost -U postgres -F c -f /pgbackup/$(date +"%Y%m%d")_mydatabase.dmp mydatabase
将脚本保存为/deploy/backuppg,添加执行权限(chmod +x /deploy/backuppg),然后在crontab -e中添加0 2 * * * /deploy/backuppg(每天凌晨2点执行)。