X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=handlers%2Fmysql;h=1bf4edb48ca75e103d6862145914f6f56b71f468;hb=e9e56a7af88cb07d453a94af1133bf0665f00ae3;hp=3b82ddf99a048051e642884fc64b60129fc6a638;hpb=b52464c19e50b738902e3333172b67d2b7c503b7;p=matthijs%2Fupstream%2Fbackupninja.git diff --git a/handlers/mysql b/handlers/mysql index 3b82ddf..1bf4edb 100644 --- a/handlers/mysql +++ b/handlers/mysql @@ -24,7 +24,7 @@ getconf configfile /etc/mysql/debian.cnf local usevserver=no local vroot if [ $vservers_are_available = yes ]; then - if [ -z "$vsname" ]; then + if [ -n "$vsname" ]; then # does it exist ? if ! vservers_exist "$vsname" ; then fatal "The vserver given in vsname ($vsname) does not exist." @@ -136,7 +136,7 @@ EOF fi fi -# if a user is not set, use $confgfile, otherwise use $mycnf +# if a user is not set, use $configfile, otherwise use $mycnf if [ "$user" == "" ]; then user=root; defaultsfile="--defaults-file=$configfile" @@ -160,7 +160,7 @@ else debug "User home set to: $userhome" [ -f $userhome/.my.cnf ] || fatal "Can't find config file in $userhome/.my.cnf" - defaultsfile="--defaults-file=$vuserhome/.my.cnf" + defaultsfile="--defaults-file=$userhome/.my.cnf" debug "using $defaultsfile" fi @@ -179,10 +179,10 @@ then else execstr="$MYSQLHOTCOPY --quiet --allowold --regexp /.\*/./.\*/ $hotdir" fi - debug "su $user -c '$execstr'" + debug 'su $user -c \"$execstr\"' if [ ! $test ] then - output=`su $user -c "$execstr" 2>&1` + output=`su $user -c \"$execstr\" 2>&1` code=$? if [ "$code" == "0" ] then @@ -202,10 +202,10 @@ then else execstr="$MYSQLHOTCOPY --allowold $db $hotdir" fi - debug "su $user -c '$execstr'" + debug 'su $user -c \"$execstr\"' if [ ! $test ] then - output=`su $user -c "$execstr" 2>&1` + output=`su $user -c \"$execstr\" 2>&1` code=$? if [ "$code" == "0" ] then @@ -230,14 +230,14 @@ then then if [ $usevserver = yes ] then - debug "echo show databases | $VSERVER $vsname exec su $user -c $MYSQL $defaultsfile | grep -v Database" - databases=`echo 'show databases' | $VSERVER $vsname exec su $user -c "$MYSQL $defaultsfile" | grep -v Database` + debug 'echo show databases | $VSERVER $vsname exec su $user -c \"$MYSQL $defaultsfile\" | grep -v Database' + databases=`echo 'show databases' | $VSERVER $vsname exec su $user -c \"$MYSQL $defaultsfile\" | grep -v Database` if [ $? -ne 0 ] then fatal "Authentication problem, maybe user/password is wrong" fi else - databases=`echo 'show databases' | su $user -c "$MYSQL $defaultsfile" | grep -v Database` + databases=`echo 'show databases' | su $user -c \"$MYSQL $defaultsfile\" | grep -v Database` if [ $? -ne 0 ] then fatal "Authentication problem, maybe user/password is wrong" @@ -253,10 +253,10 @@ fi else execstr="$MYSQLDUMP $defaultsfile --lock-tables --complete-insert --add-drop-table --quick --quote-names $ignore $db > $dumpdir/${db}.sql" fi - debug "su $user -c '$execstr'" + debug 'su $user -c \"$execstr\"' if [ ! $test ] then - output=`su $user -c "$execstr" 2>&1` + output=`su $user -c \"$execstr\" 2>&1` code=$? if [ "$code" == "0" ] then @@ -277,7 +277,7 @@ fi fi # clean up tmp config file -if [ "$dbusername" != "" ] +if [ "$dbusername" != "" -a "$dbpassword" != "" ] then ## clean up tmp config file debug "rm $mycnf"