適用場景:適合不熟悉命令行的用戶,操作直觀。
步驟:
/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