From 2a808027641bb2f15586383a9913dfe200cacabe Mon Sep 17 00:00:00 2001 From: Jean-Marie RENOUARD Date: Mon, 13 Jul 2015 16:58:24 +0200 Subject: [PATCH] Adding check for percentage used buffer pool --- mysqltuner.pl | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/mysqltuner.pl b/mysqltuner.pl index 99cc21d..14111ff 100755 --- a/mysqltuner.pl +++ b/mysqltuner.pl @@ -1,5 +1,5 @@ #!/usr/bin/perl -w -# mysqltuner.pl - Version 1.4.7 +# mysqltuner.pl - Version 1.4.8 # High Performance MySQL Tuning Script # Copyright (C) 2006-2015 Major Hayden - major@mhtx.net # @@ -1036,6 +1036,7 @@ sub calculations { debugprint "pct_write_efficiency: ".$mycalc{'pct_read_efficiency'}."\n"; debugprint "Innodb_buffer_pool_writes: ".$mystat{'Innodb_buffer_pool_writes'}."\n"; debugprint "Innodb_buffer_pool_write_requests: ".$mystat{'Innodb_buffer_pool_write_requests'}."\n"; + $mycalc{'pct_innodb_buffer_used'}=percentage(($mystat{'Innodb_buffer_pool_pages_total'}-$mystat{'Innodb_buffer_pool_pages_free'}), $mystat{'Innodb_buffer_pool_pages_total'}) if defined $mystat{'Innodb_buffer_pool_pages_total'}; # Binlog Cache if ($myvar{'log_bin'} ne 'OFF') { @@ -1358,6 +1359,12 @@ sub mysql_innodb { if (defined $myvar{'innodb_log_buffer_size'}) { infoprint " +-- InnoDB Log Buffer: " . hr_bytes($myvar{'innodb_log_buffer_size'}) . "\n"; } + if (defined $mystat{'Innodb_buffer_pool_pages_free'}) { + infoprint " +-- InnoDB Log Buffer Free: " . hr_bytes($mystat{'Innodb_buffer_pool_pages_free'}) . "\n"; + } + if (defined $mystat{'Innodb_buffer_pool_pages_total'}) { + infoprint " +-- InnoDB Log Buffer Used: " . hr_bytes($mystat{'Innodb_buffer_pool_pages_total'}) . "\n"; + } } # InnoDB Buffer Pull Size if ($myvar{'innodb_buffer_pool_size'} > $enginestats{'InnoDB'}) { @@ -1395,6 +1402,13 @@ sub mysql_innodb { } } + # InnoDB Used Buffer Pool + if (defined $mycalc{'pct_innodb_buffer_used'} && $mycalc{'pct_innodb_buffer_used'} < 80 ) { + badprint "InnoDB Used buffer: ".$mycalc{'pct_innodb_buffer_used'}. "% (".($mystat{'Innodb_buffer_pool_pages_total'} - $mystat{'Innodb_buffer_pool_pages_free'})." used/ ".$mystat{'Innodb_buffer_pool_pages_total'}." total)\n"; + } else { + goodprint "InnoDB Used buffer: ".$mycalc{'pct_innodb_buffer_used'}. "% (".($mystat{'Innodb_buffer_pool_pages_total'} - $mystat{'Innodb_buffer_pool_pages_free'})." used/ ".$mystat{'Innodb_buffer_pool_pages_total'}." total)\n"; + } + # InnoDB Read efficency if (defined $mycalc{'pct_read_efficiency'} && $mycalc{'pct_read_efficiency'} < 90 ) { badprint "InnoDB Read buffer efficiency: ".$mycalc{'pct_read_efficiency'}. "% (".($mystat{'Innodb_buffer_pool_read_requests'} - $mystat{'Innodb_buffer_pool_reads'})." hits/ ".$mystat{'Innodb_buffer_pool_read_requests'}." total)\n";