--- /usr/bin/mysqldumpslow 2008-01-17 16:43:11.000000000 +0100 +++ mysqldumpslow 2008-01-17 16:49:08.000000000 +0100 @@ -34,13 +34,14 @@ $opt{'help'} and usage(); unless (@ARGV) { - my $defaults = `my_print_defaults mysqld`; + my $defaults = `my_print_defaults mysqld -c /etc/mysql/my.cnf`; my $basedir = ($defaults =~ m/--basedir=(.*)/)[0] - or die "Can't determine basedir from 'my_print_defaults mysqld' output: $defaults"; + or die "Can't determine basedir from 'my_print_defaults mysqld' -c /etc/mysql/my.cnf output: $defaults"; warn "basedir=$basedir\n" if $opt{v}; my $datadir = ($defaults =~ m/--datadir=(.*)/)[0]; - my $slowlog = ($defaults =~ m/--log-slow-queries=(.*)/)[0]; + my $slowlog = ($defaults =~ m/--log[-_]slow[-_]queries=(.*)/)[0]; + if (!$datadir or $opt{i}) { # determine the datadir from the instances section of /etc/my.cnf, if any my $instances = `my_print_defaults instances`;