1 --- percona-server-5.6.20-68.0/scripts/mysqldumpslow.sh~ 2014-08-29 10:58:05.000000000 +0300
2 +++ percona-server-5.6.20-68.0/scripts/mysqldumpslow.sh 2014-09-06 20:50:22.000000000 +0300
5 $opt{'help'} and usage();
7 +# find config file for first defined cluster
8 +sub get_defaults_file {
9 + my $clusters_file = '/etc/mysql/clusters.conf';
10 + return unless -f $clusters_file;
12 + open(my $fh , "< $clusters_file") or return;
14 + my ($config, $clusterdir) = m{^([^#]+)\s*=\s*(.+)$};
15 + next unless $config;
17 + if ($config !~ m{/}) {
18 + my $f = "/etc/mysql/$config";
21 + my $f = "$clusterdir/$config";
26 + close($fh) or die $!;
31 - my $defaults = `my_print_defaults mysqld`;
32 + my $defaults_file = get_defaults_file;
33 + my $defaults_arg = "-c $defaults_file" if $defaults_file;
34 + my $defaults = `my_print_defaults $defaults_arg mysqld`;
35 my $basedir = ($defaults =~ m/--basedir=(.*)/)[0]
36 or die "Can't determine basedir from 'my_print_defaults mysqld' output: $defaults";
37 warn "basedir=$basedir\n" if $opt{v};
39 my $slowlog = ($defaults =~ m/--slow-query-log-file=(.*)/)[0];
40 if (!$datadir or $opt{i}) {
41 # determine the datadir from the instances section of /etc/my.cnf, if any
42 - my $instances = `my_print_defaults instances`;
43 + my $instances = `my_print_defaults $defaults_arg instances`;
44 die "Can't determine datadir from 'my_print_defaults mysqld' output: $defaults"
46 my @instances = ($instances =~ m/^--(\w+)-/mg);