#!/bin/bash SERVER=server_hs2 BACKUP_OUTPUT=/tmp/backups set -e echo enter maintenance mode maxctrl set server "$SERVER" maintenance mariadb -e "SET GLOBAL wsrep_desync = ON;" backup_dir=$(mktemp -d) mkdir "$backup_output" || true cleanup () { echo leaving maintenance mode mariadb -e "SET GLOBAL wsrep_desync = OFF;" maxctrl clear server "$SERVER" maintenance } trap cleanup EXIT echo running backup to "$backup_dir" mariadb-backup --backup --target-dir="$backup_dir" echo compressing cd "$BACKUP_OUTPUT" backup_file="dump-$(date +%Y-%m-%d_%H-%M-%S).tar.gz" tar czvf "$backup_file" "." echo backed up to "$BACKUP_OUTPUT/$backup_file" rm -r "$backup_dir"