dump sql files master
authorDobrica Pavlinusic <dpavlin@rot13.org>
Mon, 20 Nov 2023 17:20:36 +0000 (18:20 +0100)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Tue, 21 Nov 2023 08:08:50 +0000 (09:08 +0100)
mysql-slow-apache.pl

index a02ab3f..5d35237 100755 (executable)
@@ -55,6 +55,10 @@ sub log_time {
 }
 
 
+my $sql;
+my $sql_count = 0;
+my $in_sql = 0;
+
 open(my $slow_fh, '<', '/var/log/mysql/mysql-slow.log');
 while(<$slow_fh>) {
        print $_;
@@ -66,21 +70,18 @@ while(<$slow_fh>) {
                print "XXX ",t_iso($t), " -> ", t_iso($t_start), $/ if $debug;
 
                log_time $t_start, $d;
+       } elsif ( m/SET timestamp=(\d+);/ ) {
+               $in_sql = $1;
+       } elsif ( $in_sql ) {
+               $sql .= $_;
+               if ( m/;/ ) {
+                       $in_sql = 0;
+                       open(my $sql_fh, '>', t_iso($t) . "-$in_sql-$sql_count.sql");
+                       print $sql_fh $sql;
+                       close $sql_fh;
+                       $sql_count++;
+                       $sql = '';
+               }
        }
 }
 
-__END__
-#!/bin/sh -xe
-
-stdbuf -o L cat /var/log/mysql/mysql-slow.log \
-| stdbuf -e L tee /dev/stderr \
-| stdbuf -o L grep Time: \
-| stdbuf -o L awk '{ print "grep --line-buffered " $4 " /var/log/apache2/other_vhosts_access.log-20"$3 ; fflush(stdout); }' | sh
-
-exit 0
-
-zgrep Query_time /var/log/mysql/mysql-slow.log*
-
-exit 0
-
-grep -E '(Query_time|Time)' /var/log/mysql/mysql-slow.log