From: micah Date: Tue, 20 Nov 2007 01:28:49 +0000 (+0000) Subject: add patch from matthew palmer to enhance mysql database selection (Closes: #452039) X-Git-Url: https://git.stderr.nl/gitweb?a=commitdiff_plain;h=a6ab7e3f11c1606fe3a4773ea952457fa37ece6f;p=matthijs%2Fupstream%2Fbackupninja.git add patch from matthew palmer to enhance mysql database selection (Closes: #452039) git-svn-id: http://code.autistici.org/svn/backupninja/trunk@495 758a04ac-41e6-0310-8a23-8373a73cc35d --- diff --git a/AUTHORS b/AUTHORS index 79e338a..ea31cba 100644 --- a/AUTHORS +++ b/AUTHORS @@ -22,4 +22,5 @@ Martin Krafft madduck@debian.org -- admingroup patch Anarcat -- lotsa patches Jamie McClelland -- cstream patches ale -- ldap cleanup -Sami Haahtinen \ No newline at end of file +Sami Haahtinen +Matthew Palmer -- mysql enhancements diff --git a/ChangeLog b/ChangeLog index 7682a29..983341e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -28,6 +28,10 @@ version 0.9.5 -- unreleased the data from a backup, but still backup the table structure. This is very useful in cases where tables contain large amounts of cache data. See the example.mysql for options, thanks Daniel Bonniot (Closes: #408829) + . Enhance code for selecting databases by asking MySQL not to give us the + header (-N), to not draw pretty boxes around the output (-B), send the query + via -e instead of a pipe and ensure MySQL listens to -B. Thanks to + Matthew Palmer (Closes: #452039). pgsql: . Support configuring PGSQLUSER for real, and document it a bit; this broken support actually prevented pgsql handler to work for VServers diff --git a/handlers/mysql.in b/handlers/mysql.in index 64b6f49..defb72a 100644 --- a/handlers/mysql.in +++ b/handlers/mysql.in @@ -238,7 +238,7 @@ then fatal "Authentication problem, maybe user/password is wrong or mysqld is not running?" fi else - databases=`echo 'show databases' | su $user -c "$MYSQL $defaultsfile" | grep -v Database` + databases=$(su $user -c "$MYSQL $defaultsfile -N -B -e 'show databases'" | sed 's/|//g;/\+----/d') if [ $? -ne 0 ] then fatal "Authentication problem, maybe user/password is wrong or mysqld is not running?"