scripte/Einzelne_Restore_Scripte/backup_db.sh

19 lines
716 B
Bash
Executable File

#!/bin/bash
if [ -z "$1" ]; then
echo "Nutzung: $0 <CONTAINERNAME>"
exit 1
fi
CONTAINER="$1"
DB_UEBERSICHT="/home/thomas/db_uebersicht.md"
read USER PASS < <(tail -n +5 "$DB_UEBERSICHT" | grep "| $CONTAINER " | awk -F '|' '{print $5, $6}' | xargs)
TIMESTAMP=$(date +"%Y-%m-%d_%H-%M-%S")
BACKUP_DIR="/home/thomas/backup_images/${TIMESTAMP}_db_${CONTAINER}"
mkdir -p "$BACKUP_DIR"
echo "Erstelle Dump für $CONTAINER ($USER)..."
docker exec $CONTAINER mysqldump -u $USER -p$PASS --all-databases --single-transaction --quick --lock-tables=false > "$BACKUP_DIR/${CONTAINER}.sql" \
&& echo "DB-Backup für $CONTAINER gespeichert unter $BACKUP_DIR/${CONTAINER}.sql" \
|| echo "Fehler beim Dump von $CONTAINER"