#!/usr/bin/env sh set -eu backup_dir="${1:-./backup}" mkdir -p "$backup_dir" tar -czf "$backup_dir/site-files.tgz" ./wp-content # For the database use a least-privilege backup account and protected credential source. mysqldump --single-transaction --routines --triggers app | gzip > "$backup_dir/database.sql.gz" tar -tzf "$backup_dir/site-files.tgz" >/dev/null gzip -t "$backup_dir/database.sql.gz" printf 'Backup files verified. Next step: perform a restore drill in an isolated environment. '