backslashes for the double quotes are necessary in the debug lines
[matthijs/upstream/backupninja.git] / handlers / mysql
index 3b82ddf99a048051e642884fc64b60129fc6a638..52193f4ec0afa8642dd0daaf7ddc299315952f1f 100644 (file)
@@ -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,7 +179,7 @@ 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`
@@ -202,7 +202,7 @@ 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`
@@ -230,7 +230,7 @@ then
     then
        if [ $usevserver = yes ]
        then
-           debug "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
@@ -253,7 +253,7 @@ 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`
@@ -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"