mysql: fix 'mysqladmin ping' use, see changelog for details
authorintrigeri <intrigeri@boum.org>
Mon, 12 Jan 2009 22:47:30 +0000 (22:47 +0000)
committerintrigeri <intrigeri@boum.org>
Mon, 12 Jan 2009 22:47:30 +0000 (22:47 +0000)
ChangeLog
handlers/mysql.in

index 58ae95470d48ae430d4fdcd24124b08a08b97785..33a51de06ec5d8d96c6f442d4f6494ce1a3e6b85 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -13,6 +13,11 @@ version 0.9.7 -- UNRELEASED
         . Options passed to mysqldump are now customizable with the new
           sqldumpoptions configuration variable. Thanks to Chris Lamb for his
           preliminary patch (Closes: #502966)
         . Options passed to mysqldump are now customizable with the new
           sqldumpoptions configuration variable. Thanks to Chris Lamb for his
           preliminary patch (Closes: #502966)
+        . Hide 'mysqladmin ping' output, to prevent confusing the user in
+          case mysqld is running but the authentication fails, which apparently
+          does not prevent mysqldump to work.
+        . Fix the error message displayed when mysqld is not running:
+          mysqladmin ping indeed returns 0 when authentication fails.
 
 version 0.9.6 -- July 21, 2008
     backupninja changes
 
 version 0.9.6 -- July 21, 2008
     backupninja changes
index c80a36a3d95881ba0aa8b4f8ba5fd20ec3efce05..e34b16dbb0c3c3d697d9ac0152079f70a53a1b79 100644 (file)
@@ -266,9 +266,9 @@ then
                if [ $usevserver = yes ]
                then
                    # Test to make sure mysqld is running, if it is not sqldump will not work
                if [ $usevserver = yes ]
                then
                    # Test to make sure mysqld is running, if it is not sqldump will not work
-                   $VSERVER $vsname exec su $user -c "$MYSQLADMIN $defaultsfile ping"
+                   $VSERVER $vsname exec su $user -c "$MYSQLADMIN $defaultsfile ping 2>&1 >/dev/null"
                    if [ $? -ne 0 ]; then
                    if [ $? -ne 0 ]; then
-                      fatal "Either you have an authentication problem, or mysqld doesn't appear to be running!"
+                      fatal "mysqld doesn't appear to be running!"
                    fi
                    if [ "$compress" == "yes" ]; then
                       execstr="$VSERVER $vsname exec $DUMP | $GZIP > $vroot$dumpdir/${db}.sql.gz"
                    fi
                    if [ "$compress" == "yes" ]; then
                       execstr="$VSERVER $vsname exec $DUMP | $GZIP > $vroot$dumpdir/${db}.sql.gz"
@@ -277,9 +277,9 @@ then
                    fi
                else
                    # Test to make sure mysqld is running, if it is not sqldump will not work
                    fi
                else
                    # Test to make sure mysqld is running, if it is not sqldump will not work
-                   su $user -c "$MYSQLADMIN $defaultsfile ping"
+                   su $user -c "$MYSQLADMIN $defaultsfile ping 2>&1 >/dev/null"
                    if [ $? -ne 0 ]; then
                    if [ $? -ne 0 ]; then
-                      fatal "Either you have an authentication problem, or mysqld doesn't appear to be running!"
+                      fatal "mysqld doesn't appear to be running!"
                    fi
                    if [ "$compress" == "yes" ]; then
                       execstr="$DUMP | $GZIP > $dumpdir/${db}.sql.gz"
                    fi
                    if [ "$compress" == "yes" ]; then
                       execstr="$DUMP | $GZIP > $dumpdir/${db}.sql.gz"