|
|
|
@ -1,5 +1,10 @@
|
|
|
|
|
#!/usr/bin/env sh
|
|
|
|
|
|
|
|
|
|
# Usage:
|
|
|
|
|
# postgres_backup.sh [man] //Manual backup
|
|
|
|
|
# postgres_backup.sh auto //Auto backup (separate backup location)
|
|
|
|
|
# postgres_backup.sh [auto|man] debug //Outputs success messages to STDOUT
|
|
|
|
|
|
|
|
|
|
# CONFIG
|
|
|
|
|
### Example Config File ############
|
|
|
|
|
###
|
|
|
|
@ -26,15 +31,21 @@ list_db=$(psql -p${PORT} -U postgres -t -c 'select datname from pg_database;' |
|
|
|
|
|
|
|
|
|
|
case $COMPRESSION in
|
|
|
|
|
xz)
|
|
|
|
|
[ "$2" = "debug" ] && echo "Backed up globals using $COMPRESSION -${COMP_LEVEL}"
|
|
|
|
|
pg_dumpall -p${PORT} -g | xz -T${THREADS} -${COMP_LEVEL} - > ${DIR}/globals_${DATE}.dmp.xz
|
|
|
|
|
[ "$2" = "debug" ] && echo "Starting DB dump loop..."
|
|
|
|
|
for db in $list_db; do
|
|
|
|
|
pg_dump -O $db | xz -T${THREADS} -${COMP_LEVEL} - > ${DIR}/${db}-${DATE}.dmp.xz
|
|
|
|
|
[ "$2" = "debug" ] && echo "Backed up $db using $COMPRESSION -${COMP_LEVEL}"
|
|
|
|
|
done
|
|
|
|
|
;;
|
|
|
|
|
zstd)
|
|
|
|
|
[ "$2" = "debug" ] && echo "Backed up globals using $COMPRESSION -${COMP_LEVEL}"
|
|
|
|
|
pg_dumpall -p${PORT} -g | zstd -T${THREADS} -${COMP_LEVEL} -z - > ${DIR}/globals_${DATE}.dmp.zst
|
|
|
|
|
[ "$2" = "debug" ] && echo "Starting DB dump loop..."
|
|
|
|
|
for db in $list_db; do
|
|
|
|
|
pg_dump -O $db | zstd -T${THREADS} -${COMP_LEVEL} -z - > ${DIR}/${db}-${DATE}.dmp.zst
|
|
|
|
|
[ "$2" = "debug" ] && echo "Backed up $db using $COMPRESSION -${COMP_LEVEL}"
|
|
|
|
|
done
|
|
|
|
|
;;
|
|
|
|
|
*)
|
|
|
|
|