#!/usr/bin/env bash set -euo pipefail CONF="/opt/db-admin/app/config.json" DB_USER=$(jq -r '.db.user' "$CONF") DB_PASS=$(jq -r '.db.password' "$CONF") DB_NAME=$(jq -r '.db.name' "$CONF") OUT_DIR="/var/backups/db-admin" mkdir -p "$OUT_DIR" TS=$(date +"%Y%m%d-%H%M%S") OUT="$OUT_DIR/${DB_NAME}-${TS}.sql.gz" mysqldump -u"$DB_USER" -p"$DB_PASS" "$DB_NAME" | gzip -9 > "$OUT" echo "Backup written to $OUT"