Support --dumdir and generation of MyISAM to InnoDB SQL conversion script (migrate_myisam_to_innodb.sql)
This commit is contained in:
parent
b8045b2465
commit
5926c59ce6
1 changed files with 17 additions and 8 deletions
|
@ -1,5 +1,5 @@
|
||||||
#!/usr/bin/env perl
|
#!/usr/bin/env perl
|
||||||
# mysqltuner.pl - Version 2.1.10
|
# mysqltuner.pl - Version 2.1.11
|
||||||
# High Performance MySQL Tuning Script
|
# High Performance MySQL Tuning Script
|
||||||
# Copyright (C) 2006-2023 Major Hayden - major@mhtx.net
|
# Copyright (C) 2006-2023 Major Hayden - major@mhtx.net
|
||||||
# Copyright (C) 2015-2023 Jean-Marie Renouard - jmrenouard@gmail.com
|
# Copyright (C) 2015-2023 Jean-Marie Renouard - jmrenouard@gmail.com
|
||||||
|
@ -57,7 +57,7 @@ use Cwd 'abs_path';
|
||||||
#use Env;
|
#use Env;
|
||||||
|
|
||||||
# Set up a few variables for use in the script
|
# Set up a few variables for use in the script
|
||||||
my $tunerversion = "2.1.10";
|
my $tunerversion = "2.1.11";
|
||||||
my ( @adjvars, @generalrec );
|
my ( @adjvars, @generalrec );
|
||||||
|
|
||||||
# Set defaults
|
# Set defaults
|
||||||
|
@ -3785,8 +3785,17 @@ sub mysql_myisam {
|
||||||
|
|
||||||
if ($nb_myisam_tables > 0) {
|
if ($nb_myisam_tables > 0) {
|
||||||
badprint "Consider migrating $nb_myisam_tables followning tables to InnoDB:";
|
badprint "Consider migrating $nb_myisam_tables followning tables to InnoDB:";
|
||||||
|
my $sql_mig="";
|
||||||
for my $myisam_table ( select_array("SELECT CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) FROM information_schema.TABLES WHERE ENGINE='MyISAM' and TABLE_SCHEMA NOT IN ('mysql','information_schema','performance_schema')" )) {
|
for my $myisam_table ( select_array("SELECT CONCAT(TABLE_SCHEMA, '.', TABLE_NAME) FROM information_schema.TABLES WHERE ENGINE='MyISAM' and TABLE_SCHEMA NOT IN ('mysql','information_schema','performance_schema')" )) {
|
||||||
infoprint "* SQL migration for $myisam_table: ALTER TABLE $myisam_table ENGINE=InnoDB;";
|
$sql_mig="${sql_mig}-- InnoDB migration for $myisam_table\nALTER TABLE $myisam_table ENGINE=InnoDB;\n\n";
|
||||||
|
infoprint "* InnoDB migration request for $myisam_table Table: ALTER TABLE $myisam_table ENGINE=InnoDB;";
|
||||||
|
}
|
||||||
|
if ( -d "$opt{dumpdir}" ) {
|
||||||
|
my $file_mig="$opt{dumpdir}/migrate_myisam_to_innodb.sql";
|
||||||
|
open (FILE, ">$file_mig") or die "Can't open $file_mig: $!";
|
||||||
|
print FILE $sql_mig;
|
||||||
|
close FILE;
|
||||||
|
infoprint "Migration script saved to $file_mig";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
infoprint("General MyIsam metrics:");
|
infoprint("General MyIsam metrics:");
|
||||||
|
@ -7152,7 +7161,7 @@ __END__
|
||||||
|
|
||||||
=head1 NAME
|
=head1 NAME
|
||||||
|
|
||||||
MySQLTuner 2.1.10 - MySQL High Performance Tuning Script
|
MySQLTuner 2.1.11 - MySQL High Performance Tuning Script
|
||||||
|
|
||||||
=head1 IMPORTANT USAGE GUIDELINES
|
=head1 IMPORTANT USAGE GUIDELINES
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue