#!/bin/bash set -e echo enter maintenance mode maxctrl set server server_hs2 maintenance mariadb -e "SET GLOBAL wsrep_desync = ON;" backup_dir=$(mktemp -d) backup_output=/tmp/backups mkdir "$backup_output" || true cleanup () { echo leaving maintenance mode mariadb -e "SET GLOBAL wsrep_desync = OFF;" maxctrl clear server server_hs2 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"