From 1589ffcdab9015a3d890949a531987cd029271e5 Mon Sep 17 00:00:00 2001 From: Vitali Graf Date: Sun, 25 Nov 2018 12:06:10 +0100 Subject: [PATCH] b_mysql gemacht... --- start.sh | 41 ++++++++++++++++++----------------------- 1 file changed, 18 insertions(+), 23 deletions(-) diff --git a/start.sh b/start.sh index c5e4e52..6d6eb19 100755 --- a/start.sh +++ b/start.sh @@ -63,7 +63,14 @@ b_files(){ b_mysql(){ ## Export einer MySQL-DB als SQL-Script in ein später (!) zu sicherndes Ordner - sleep 1 + echo dumb database: "$1" + if [ "$MYSQL_CONTAINER" != '' ] + then + echo from container: "$MYSQL_CONTAINER" + ssh ${REMOTE_USER}@${REMOTE_HOST} "docker exec -i \"$MYSQL_CONTAINER\" mysqldump -u \"$MYSQL_USER\" \"-p$MYSQL_PASS\" --events --routines --triggers --single-transaction --add-drop-database -B \"$1\" > \"$MYSQL_DUMP_DIR/$1.sql\"" + else + ssh ${REMOTE_USER}@${REMOTE_HOST} "mysqldump -u \"$MYSQL_USER\" \"-p$MYSQL_PASS\" --events --routines --triggers --single-transaction --add-drop-database -B \"$1\" > \"$MYSQL_DUMP_DIR/$1.sql\"" + fi } b_vol(){ @@ -71,11 +78,6 @@ b_vol(){ sleep 1 } -b_mysql_cont(){ - ## Export einer MySQL-DB als SQL-Script aus einem docker container in ein später (!) zu sicherndes Ordner - sleep 1 -} - backup(){ read_config "$1" @@ -95,14 +97,7 @@ backup(){ for db in "${MYSQL_DB[@]}" do - echo dumb database: "$db" - if [ "$MYSQL_CONTAINER" != '' ] - then - echo from container: "$MYSQL_CONTAINER" - ssh ${REMOTE_USER}@${REMOTE_HOST} "docker exec -i \"$MYSQL_CONTAINER\" mysqldump -u \"$MYSQL_USER\" \"-p$MYSQL_PASS\" --events --routines --triggers --single-transaction --add-drop-database -B \"$db\" > \"$MYSQL_DUMP_DIR/$db.sql\"" - else - ssh ${REMOTE_USER}@${REMOTE_HOST} "mysqldump -u \"$MYSQL_USER\" \"-p$MYSQL_PASS\" --events --routines --triggers --single-transaction --add-drop-database -B \"$db\" > \"$MYSQL_DUMP_DIR/$db.sql\"" - fi + b_mysql "$db" done # Ordner mit SQL-Dateien in die Sicherung aufnehmen @@ -150,7 +145,13 @@ backup(){ r_files(){ ## einzelne Dateien und Ordner mit rdiff-backup wiedercherstellen - sleep 1 + echo restore file[s]: "$1" "$3" + + if [ "$3" != "" ]; then + rdiff-backup --force -r "$3" "$1" "$2" + else + rdiff-backup --force -r now "$1" "$2" + fi } b_mysql(){ @@ -171,7 +172,7 @@ b_mysql_cont(){ restore(){ read_config "$1" - echo Start restore $1 + echo Start restore $1 -> $2 echo ================================================== # neue Konfiguration lesen @@ -187,13 +188,7 @@ restore(){ for dir in "${FOLDERS[@]}" do # die eigentliche Wiederherstellung ... - echo restore file[s]: "$dir" "$2" - - if [ "$2" != "" ]; then - rdiff-backup --force -r "$2" "$BACKUP_DIR/${REMOTE_HOST}${dir}" "${REMOTE_USER}@${REMOTE_HOST}::${dir}" - else - rdiff-backup --force -r now "$BACKUP_DIR/${REMOTE_HOST}${dir}" "${REMOTE_USER}@${REMOTE_HOST}::${dir}" - fi + r_files "$BACKUP_DIR/${REMOTE_HOST}${dir}" "${REMOTE_USER}@${REMOTE_HOST}::${dir}" "$2" done # SCHRITT 2: # Datenbanken wiederherstellen