crontab -e
在最后添加:
# backup database at 22:00 every day
0 22 * * * thunisoft /home/eric/bin/backup-db.sh
这样每天22:00时就会自动执行 pg_dump 以备份testdb数据库。
定时任务备份脚本:
select 'pg_dump -h localhost -p 5432 -Usa -d '||datname||' -Fc -f /opt/thunisoft/20180321_'||datname||'.bak;' from pg_database;
压缩备份的差别很大。不压缩备份出来后有1.1Gb,压缩后大约100Mb
备份成压缩文件:-Fc
pg_dump -h localhost -p 6543 -Usa -d db_sqlfx -Fc -f /opt/thun/20180319.bak
自定义回复文件:pg_restore
pg_restore -h localhost -p 6543 -Usa -d db_sqlfx -f /opt/thun/20180319.bak1
-j多线程还原。
PostgreSQL支持以下两种数据恢复方法:
1、使用psql恢复pg_dump或pg_dumpall工具生成的SQL文本格式的数据备份。
2、使用pg_restore工具来恢复由pg_dump工具生成的自定义压缩格式、TAR包格式或者目录格式备份。