适用场景:适合不熟悉命令行的用户,操作直观。
步骤:
/var/backups/pgadmin/)和文件名(如mydb_backup.dump)。适用场景:适合自动化备份(如通过cron定时任务),效率高。
常用命令:
pg_dump -U postgres -h localhost -p 5432 -F p -f /var/backups/pgadmin/mydb_backup.sql mydb
参数说明:-U(用户名)、-h(主机)、-p(端口)、-F p(plain格式)、-f(输出文件)、mydb(数据库名)。pg_dump -U postgres -h localhost -p 5432 -F c -f /var/backups/pgadmin/mydb_backup.dump mydb
pg_dumpall -U postgres -h localhost -p 5432 -f /var/backups/pgadmin/all_databases_backup.sql
注意:pg_dumpall仅支持plain格式,需用psql恢复。适用场景:适合手动恢复少量数据,操作便捷。
步骤:
/var/backups/pgadmin/mydb_backup.dump)。适用场景:适合自动化恢复或大规模数据恢复,效率高。
常用命令:
psql -U postgres -h localhost -p 5432 -d mydb -f /var/backups/pgadmin/mydb_backup.sql
参数说明:-d(目标数据库)、-f(备份文件)。pg_restore -U postgres -h localhost -p 5432 -d mydb /var/backups/pgadmin/mydb_backup.dump
psql -U postgres -h localhost -p 5432 -f /var/backups/pgadmin/all_databases_backup.sql
注意:恢复全系统备份前,需确保PostgreSQL服务已停止(避免数据冲突),恢复后重启服务。postgres)身份执行,或赋予对应用户足够权限(如CREATEDB、SUPERUSER)。crontab设置定时任务(如每天凌晨2点执行备份),示例:crontab -e
添加以下内容:0 2 * * * /usr/bin/pg_dump -U postgres -h localhost -p 5432 -F c -f /var/backups/pgadmin/daily_backup_$(date +\%Y-\%m-\%d).dump mydb
~/.pgadmin/目录(默认存储路径),示例:tar -czvf pgadmin_config_backup.tar.gz ~/.pgadmin