From 46f9f8dd4f8638f1b92f2b38fb09fcdaed9ba7f8 Mon Sep 17 00:00:00 2001
From: Patrick Ditzel <patrick@localhost.localdomain>
Date: Sun, 17 Dec 2017 21:08:34 +0000
Subject: [PATCH] Make some changes in the mainscript und the postgresmodule. Added the fist experiments for mariadb.

---
 dbb-modules/mariadb |   41 +++++++++++++++++++++++++++++++++--------
 1 files changed, 33 insertions(+), 8 deletions(-)

diff --git a/dbb-modules/mariadb b/dbb-modules/mariadb
index f45817c..e47e7c7 100644
--- a/dbb-modules/mariadb
+++ b/dbb-modules/mariadb
@@ -3,17 +3,42 @@
 # MariaBD/MySQL remote
 #
 # The Information what MySQL/MariaDB - databases should be backuped are defined in ~/.my.cnf
+#
+# note:for MARIADB in $(ls .my.cnf-* | cut -d "-" -f2); do mysqldump --defaults-file="~/.my.cnf-$MARIADB" --skip-dump-date $MARIADB > $TMP_DIR/$(cat ~/.my.cnf-$DATABASE | grep host | cut -d "=" -f2); done
+# note: for each MySQL- or MariaDB-Database create a seperate configfile .my.cnf-dbname ind the ~ of the backupuser:
+# note: replase the suffixe -dbname with the name of the database. The seperating "-" can also be a ".".
+#	[mysqldump]
+# host=HOSTNAME
+# user=DBUSERNAME
+# password=PASSWORD
+# database=DATABASENAME
 
-function run_mysql_backups {
-	debug "Dump remote database $MYSQLDB from $MYSQLDBHOST"
-	/usr/bin/mysqldump --skip-dump-date -h "$MYSQLDBHOST" -u "$MYSQLDBUSER" -p"$MYSQLPASSWD" "$MYSQLDB" > "$TMP_DIR"/"$MYSQLDBHOST"_"$MYSQLDB".mysql
-	debug "Diff MySQLDump $MYSQLDB"
-	diff "$TMP_DIR"/"$MYSQLDBHOST"_"$MYSQLDB".mysql "$BACKUP_DIR"/"$MYSQLDBHOST"_"$MYSQLDB".mysql > /dev/null 2>&1
+function check-mariadb-deps {
+	if [ ! -e /usr/bin/mysqldump ]; then
+		debug "It seems that you dont have mysqldump installed. You may have problems to backup remote databases"
+	fi
+# TODO: Check for ~/.my.cnf-*
+}
+
+function mariadb_remote {
+	MARIADBHOSTNAME=$(cat ~/.my.cnf-$DATABASE | grep host | cut -d "=" -f2)
+	for MARIADB in $(ls .my.cnf-* | cut -d "-" -f2)
+		do
+		/usr/bin/mysqldump --defaults-file="~/.my.cnf-$MARIADB" --skip-dump-date $MARIADB > $TMP_DIR/$MARIADBHOSTNAME_$MARIADB.mysql
+		debug "Diff MySQLDump $MYSQLDB"
+		diff "$TMP_DIR"/"$MARIADBHOSTNAME"_"$MARIADB".mysql "$BACKUP_DIR"/"$MARIADBHOSTNAME"_"$MARIADB".mysql > /dev/null 2>&1
 	if [ $? -ne 0 ]; then
 		debug "Differences found -> moving to BACKUP_DIR"
-	        mv "$TMP_DIR"/"$MYSQLDBHOST"_"$MYSQLDB".mysql "$BACKUP_DIR"/"$MYSQLDBHOST"_"$MYSQLDB".mysql
+	        mv "$TMP_DIR"/"$MARIADBHOSTNAME"_"$MARIADB".mysql "$BACKUP_DIR"/"$MARIADBHOSTNAME"_"$MARIADB".mysql
 	else
-	        debug "No differences found an Database $MYSQLDB"
+	        debug "No differences found in Database $MARIADB"
 	fi
 	echo ""
-}
\ No newline at end of file
+	done
+}
+
+function mariadb-main {
+	if [ "$MARIADB_BACKUP_REMOTE" = "TRUE" ]; then
+		mariadb_remote
+	fi
+}

--
Gitblit v1.10.0