From d63d6fc23aaaa72ca12c95f33957f2cc5374772a Mon Sep 17 00:00:00 2001 From: Major Hayden Date: Tue, 15 Jan 2008 01:24:25 +0000 Subject: [PATCH] Fixed two bugs relating to the database crawler when database names contained a hyphen. (Thanks to Mike Jackson) --- mysqltuner.pl | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/mysqltuner.pl b/mysqltuner.pl index 80d59e4..a589b49 100644 --- a/mysqltuner.pl +++ b/mysqltuner.pl @@ -24,6 +24,7 @@ # Paul Kehrer # Dave Burgess # Jonathan Hinds +# Mike Jackson # # Inspired by Matthew Montgomery's tuning-primer.sh script: # http://forge.mysql.com/projects/view.php?id=44 @@ -249,13 +250,18 @@ sub check_storage_engines { my @dblist = `mysql $mysqllogin -Bse "SHOW DATABASES"`; foreach my $db (@dblist) { chomp($db); - push (@tblist,`mysql $mysqllogin -Bse "SHOW TABLE STATUS FROM $db" | awk '{print \$2,\$7}'`); + push (@tblist,`mysql $mysqllogin -Bse "SHOW TABLE STATUS FROM \\\`$db\\\`" | awk '{print \$2,\$7}'`); foreach my $line (@tblist) { $line =~ /([a-zA-Z_]*)\s*(.*)/; - if (defined $enginestats{$1}) { - $enginestats{$1} = $enginestats{$1} + $2; + my $engine = $1; + my $size = $2; + if ($size =~ /^\d+$/) { + $size = 0; + } + if (defined $enginestats{$engine}) { + $enginestats{$engine} = $enginestats{$engine} + $size; } else { - $enginestats{$1} = $2; + $enginestats{$engine} = $size; } } }