mirror of
https://github.com/percona/percona-toolkit.git
synced 2025-09-01 18:25:59 +00:00
Merge pull request #981 from Nyele93/PT-2465_patch_fix_for_mariadb_10.5_above
PT-2465 patch fix for erroneous flavour mismatch in mariadb-10.5.x and above
This commit is contained in:
@@ -3932,7 +3932,7 @@ sub _find_replicas_by_hosts {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $sql = 'SHOW REPLICAS';
|
||||
my $source_name = 'source';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$sql = 'SHOW SLAVE HOSTS';
|
||||
$source_name='master';
|
||||
}
|
||||
@@ -4055,7 +4055,7 @@ sub get_source_dsn {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_host = 'source_host';
|
||||
my $source_port = 'source_port';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_host = 'master_host';
|
||||
$source_port = 'master_port';
|
||||
}
|
||||
@@ -4129,7 +4129,7 @@ sub get_source_status {
|
||||
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_name = 'binary log';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
}
|
||||
|
||||
@@ -4572,13 +4572,13 @@ sub get_cxn_from_dsn_table {
|
||||
sub get_source_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'master' : 'source';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'master' : 'source';
|
||||
}
|
||||
|
||||
sub get_replica_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'slave' : 'replica';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'slave' : 'replica';
|
||||
}
|
||||
|
||||
sub _d {
|
||||
|
@@ -384,7 +384,7 @@ sub _find_replicas_by_hosts {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $sql = 'SHOW REPLICAS';
|
||||
my $source_name = 'source';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$sql = 'SHOW SLAVE HOSTS';
|
||||
$source_name='master';
|
||||
}
|
||||
@@ -507,7 +507,7 @@ sub get_source_dsn {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_host = 'source_host';
|
||||
my $source_port = 'source_port';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_host = 'master_host';
|
||||
$source_port = 'master_port';
|
||||
}
|
||||
@@ -581,7 +581,7 @@ sub get_source_status {
|
||||
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_name = 'binary log';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
}
|
||||
|
||||
@@ -1024,13 +1024,13 @@ sub get_cxn_from_dsn_table {
|
||||
sub get_source_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'master' : 'source';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'master' : 'source';
|
||||
}
|
||||
|
||||
sub get_replica_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'slave' : 'replica';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'slave' : 'replica';
|
||||
}
|
||||
|
||||
sub _d {
|
||||
@@ -6454,7 +6454,7 @@ sub main {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
|
||||
my $source_name = 'source';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
}
|
||||
|
||||
@@ -6497,7 +6497,7 @@ sub main {
|
||||
|
||||
my $sql;
|
||||
if ( @master_status_cols ) {
|
||||
if ( $vp ge '8.1' && $vp->flavor() !~ m/maria/ ) {
|
||||
if ( $vp ge '8.1' && $vp->flavor() !~ m/maria/i ) {
|
||||
$sql = 'SHOW BINARY LOG STATUS';
|
||||
}
|
||||
else {
|
||||
@@ -6515,7 +6515,7 @@ sub main {
|
||||
}
|
||||
|
||||
if ( @slave_status_cols ) {
|
||||
if ( $vp ge '8.1' && $vp->flavor() !~ m/maria/ ) {
|
||||
if ( $vp ge '8.1' && $vp->flavor() !~ m/maria/i ) {
|
||||
$sql = 'SHOW REPLICA STATUS';
|
||||
}
|
||||
else {
|
||||
|
10
bin/pt-kill
10
bin/pt-kill
@@ -4206,7 +4206,7 @@ sub _find_replicas_by_hosts {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $sql = 'SHOW REPLICAS';
|
||||
my $source_name = 'source';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$sql = 'SHOW SLAVE HOSTS';
|
||||
$source_name='master';
|
||||
}
|
||||
@@ -4329,7 +4329,7 @@ sub get_source_dsn {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_host = 'source_host';
|
||||
my $source_port = 'source_port';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_host = 'master_host';
|
||||
$source_port = 'master_port';
|
||||
}
|
||||
@@ -4403,7 +4403,7 @@ sub get_source_status {
|
||||
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_name = 'binary log';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
}
|
||||
|
||||
@@ -4846,13 +4846,13 @@ sub get_cxn_from_dsn_table {
|
||||
sub get_source_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'master' : 'source';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'master' : 'source';
|
||||
}
|
||||
|
||||
sub get_replica_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'slave' : 'replica';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'slave' : 'replica';
|
||||
}
|
||||
|
||||
sub _d {
|
||||
|
@@ -4497,7 +4497,7 @@ sub _find_replicas_by_hosts {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $sql = 'SHOW REPLICAS';
|
||||
my $source_name = 'source';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$sql = 'SHOW SLAVE HOSTS';
|
||||
$source_name='master';
|
||||
}
|
||||
@@ -4620,7 +4620,7 @@ sub get_source_dsn {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_host = 'source_host';
|
||||
my $source_port = 'source_port';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_host = 'master_host';
|
||||
$source_port = 'master_port';
|
||||
}
|
||||
@@ -4694,7 +4694,7 @@ sub get_source_status {
|
||||
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_name = 'binary log';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
}
|
||||
|
||||
@@ -5137,13 +5137,13 @@ sub get_cxn_from_dsn_table {
|
||||
sub get_source_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'master' : 'source';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'master' : 'source';
|
||||
}
|
||||
|
||||
sub get_replica_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'slave' : 'replica';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'slave' : 'replica';
|
||||
}
|
||||
|
||||
sub _d {
|
||||
|
@@ -10803,7 +10803,7 @@ sub _find_replicas_by_hosts {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $sql = 'SHOW REPLICAS';
|
||||
my $source_name = 'source';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$sql = 'SHOW SLAVE HOSTS';
|
||||
$source_name='master';
|
||||
}
|
||||
@@ -10926,7 +10926,7 @@ sub get_source_dsn {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_host = 'source_host';
|
||||
my $source_port = 'source_port';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_host = 'master_host';
|
||||
$source_port = 'master_port';
|
||||
}
|
||||
@@ -11000,7 +11000,7 @@ sub get_source_status {
|
||||
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_name = 'binary log';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
}
|
||||
|
||||
@@ -11443,13 +11443,13 @@ sub get_cxn_from_dsn_table {
|
||||
sub get_source_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'master' : 'source';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'master' : 'source';
|
||||
}
|
||||
|
||||
sub get_replica_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'slave' : 'replica';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'slave' : 'replica';
|
||||
}
|
||||
|
||||
sub _d {
|
||||
|
@@ -2531,7 +2531,7 @@ sub _find_replicas_by_hosts {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $sql = 'SHOW REPLICAS';
|
||||
my $source_name = 'source';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$sql = 'SHOW SLAVE HOSTS';
|
||||
$source_name='master';
|
||||
}
|
||||
@@ -2654,7 +2654,7 @@ sub get_source_dsn {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_host = 'source_host';
|
||||
my $source_port = 'source_port';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_host = 'master_host';
|
||||
$source_port = 'master_port';
|
||||
}
|
||||
@@ -2728,7 +2728,7 @@ sub get_source_status {
|
||||
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_name = 'binary log';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
}
|
||||
|
||||
@@ -3171,13 +3171,13 @@ sub get_cxn_from_dsn_table {
|
||||
sub get_source_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'master' : 'source';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'master' : 'source';
|
||||
}
|
||||
|
||||
sub get_replica_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'slave' : 'replica';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'slave' : 'replica';
|
||||
}
|
||||
|
||||
sub _d {
|
||||
|
@@ -2945,7 +2945,7 @@ sub _find_replicas_by_hosts {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $sql = 'SHOW REPLICAS';
|
||||
my $source_name = 'source';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$sql = 'SHOW SLAVE HOSTS';
|
||||
$source_name='master';
|
||||
}
|
||||
@@ -3068,7 +3068,7 @@ sub get_source_dsn {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_host = 'source_host';
|
||||
my $source_port = 'source_port';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_host = 'master_host';
|
||||
$source_port = 'master_port';
|
||||
}
|
||||
@@ -3142,7 +3142,7 @@ sub get_source_status {
|
||||
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_name = 'binary log';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
}
|
||||
|
||||
@@ -3585,13 +3585,13 @@ sub get_cxn_from_dsn_table {
|
||||
sub get_source_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'master' : 'source';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'master' : 'source';
|
||||
}
|
||||
|
||||
sub get_replica_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'slave' : 'replica';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'slave' : 'replica';
|
||||
}
|
||||
|
||||
sub _d {
|
||||
@@ -5438,7 +5438,7 @@ sub watch_server {
|
||||
my $source_name = 'source';
|
||||
my $source_change = 'replication source';
|
||||
my $replica_name = 'replica';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
$source_change = 'master';
|
||||
$replica_name = 'slave';
|
||||
|
@@ -4559,7 +4559,7 @@ sub main {
|
||||
|
||||
# Check version, refuse working with 8.4
|
||||
my $version = VersionParser->new($slave_dbh);
|
||||
if ( $version ge '8.1' && $version->flavor() !~ m/maria/ ) {
|
||||
if ( $version ge '8.1' && $version->flavor() !~ m/maria/i ) {
|
||||
die "This tool does not work with MySQL 8.1 and newer.\n";
|
||||
}
|
||||
|
||||
|
@@ -5452,7 +5452,7 @@ sub _find_replicas_by_hosts {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $sql = 'SHOW REPLICAS';
|
||||
my $source_name = 'source';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$sql = 'SHOW SLAVE HOSTS';
|
||||
$source_name='master';
|
||||
}
|
||||
@@ -5575,7 +5575,7 @@ sub get_source_dsn {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_host = 'source_host';
|
||||
my $source_port = 'source_port';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_host = 'master_host';
|
||||
$source_port = 'master_port';
|
||||
}
|
||||
@@ -5649,7 +5649,7 @@ sub get_source_status {
|
||||
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_name = 'binary log';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
}
|
||||
|
||||
@@ -6092,13 +6092,13 @@ sub get_cxn_from_dsn_table {
|
||||
sub get_source_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'master' : 'source';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'master' : 'source';
|
||||
}
|
||||
|
||||
sub get_replica_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'slave' : 'replica';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'slave' : 'replica';
|
||||
}
|
||||
|
||||
sub _d {
|
||||
|
@@ -6982,7 +6982,7 @@ sub _find_replicas_by_hosts {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $sql = 'SHOW REPLICAS';
|
||||
my $source_name = 'source';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$sql = 'SHOW SLAVE HOSTS';
|
||||
$source_name='master';
|
||||
}
|
||||
@@ -7105,7 +7105,7 @@ sub get_source_dsn {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_host = 'source_host';
|
||||
my $source_port = 'source_port';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_host = 'master_host';
|
||||
$source_port = 'master_port';
|
||||
}
|
||||
@@ -7179,7 +7179,7 @@ sub get_source_status {
|
||||
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_name = 'binary log';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
}
|
||||
|
||||
@@ -7622,13 +7622,13 @@ sub get_cxn_from_dsn_table {
|
||||
sub get_source_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'master' : 'source';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'master' : 'source';
|
||||
}
|
||||
|
||||
sub get_replica_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'slave' : 'replica';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'slave' : 'replica';
|
||||
}
|
||||
|
||||
sub _d {
|
||||
|
@@ -340,7 +340,7 @@ sub _find_replicas_by_hosts {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $sql = 'SHOW REPLICAS';
|
||||
my $source_name = 'source';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$sql = 'SHOW SLAVE HOSTS';
|
||||
$source_name='master';
|
||||
}
|
||||
@@ -485,7 +485,7 @@ sub get_source_dsn {
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_host = 'source_host';
|
||||
my $source_port = 'source_port';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_host = 'master_host';
|
||||
$source_port = 'master_port';
|
||||
}
|
||||
@@ -566,7 +566,7 @@ sub get_source_status {
|
||||
|
||||
my $vp = VersionParser->new($dbh);
|
||||
my $source_name = 'binary log';
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/ ) {
|
||||
if ( $vp lt '8.1' || $vp->flavor() =~ m/maria/i ) {
|
||||
$source_name = 'master';
|
||||
}
|
||||
|
||||
@@ -1123,13 +1123,13 @@ sub get_cxn_from_dsn_table {
|
||||
sub get_source_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'master' : 'source';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'master' : 'source';
|
||||
}
|
||||
|
||||
sub get_replica_name {
|
||||
my ($dbh) = @_;
|
||||
my $vp = VersionParser->new($dbh);
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/) ? 'slave' : 'replica';
|
||||
return ($vp lt '8.1' || $vp->flavor() =~ m/maria/i) ? 'slave' : 'replica';
|
||||
}
|
||||
|
||||
sub _d {
|
||||
|
@@ -134,7 +134,12 @@ sub create_dbs {
|
||||
sub get_dbh_for {
|
||||
my ( $self, $server, $cxn_ops, $user ) = @_;
|
||||
_check_server($server);
|
||||
$cxn_ops ||= { AutoCommit => 1, mysql_enable_utf8 => 1, mysql_ssl => 1 };
|
||||
if ($ENV{FORK} || "" eq 'mariadb') {
|
||||
$cxn_ops ||= { AutoCommit => 1, mysql_enable_utf8 => 1, mysql_ssl => 0 };
|
||||
}
|
||||
else {
|
||||
$cxn_ops ||= { AutoCommit => 1, mysql_enable_utf8 => 1, mysql_ssl => 1 };
|
||||
}
|
||||
$user ||= 'msandbox';
|
||||
PTDEBUG && _d('dbh for', $server, 'on port', $port_for{$server});
|
||||
my $dp = $self->{DSNParser};
|
||||
|
BIN
sandbox/servers/mariadb/11.3/data.tar.gz
Normal file
BIN
sandbox/servers/mariadb/11.3/data.tar.gz
Normal file
Binary file not shown.
29
sandbox/servers/mariadb/11.3/my.sandbox.cnf
Normal file
29
sandbox/servers/mariadb/11.3/my.sandbox.cnf
Normal file
@@ -0,0 +1,29 @@
|
||||
[client]
|
||||
user = msandbox
|
||||
password = msandbox
|
||||
port = PORT
|
||||
socket = /tmp/PORT/mysql_sandboxPORT.sock
|
||||
|
||||
[mysqld]
|
||||
port = PORT
|
||||
socket = /tmp/PORT/mysql_sandboxPORT.sock
|
||||
pid-file = /tmp/PORT/data/mysql_sandboxPORT.pid
|
||||
basedir = PERCONA_TOOLKIT_SANDBOX
|
||||
datadir = /tmp/PORT/data
|
||||
key_buffer_size = 16M
|
||||
innodb_buffer_pool_size = 16M
|
||||
innodb_data_home_dir = /tmp/PORT/data
|
||||
innodb_log_group_home_dir = /tmp/PORT/data
|
||||
innodb_data_file_path = ibdata1:10M:autoextend
|
||||
innodb_log_file_size = 64M
|
||||
log-bin = mysql-bin
|
||||
relay_log = mysql-relay-bin
|
||||
log_slave_updates
|
||||
server-id = PORT
|
||||
report-host = 127.0.0.1
|
||||
report-port = PORT
|
||||
log-error = /tmp/PORT/data/mysqld.log
|
||||
innodb_lock_wait_timeout = 3
|
||||
general_log
|
||||
general_log_file = genlog
|
||||
performance_schema = ON
|
627
sandbox/servers/mariadb/11.3/system_idb_tables.sql
Normal file
627
sandbox/servers/mariadb/11.3/system_idb_tables.sql
Normal file
@@ -0,0 +1,627 @@
|
||||
USE `mysql`;
|
||||
|
||||
-- MySQL dump 10.16 Distrib 10.1.21-MariaDB, for Linux (x86_64)
|
||||
--
|
||||
-- Host: localhost Database: localhost
|
||||
-- ------------------------------------------------------
|
||||
-- Server version 10.1.21-MariaDB
|
||||
|
||||
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||
/*!40101 SET NAMES utf8 */;
|
||||
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||||
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
|
||||
|
||||
--
|
||||
-- Table structure for table `column_stats`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `column_stats` (
|
||||
`db_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`table_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`column_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`min_value` varbinary(255) DEFAULT NULL,
|
||||
`max_value` varbinary(255) DEFAULT NULL,
|
||||
`nulls_ratio` decimal(12,4) DEFAULT NULL,
|
||||
`avg_length` decimal(12,4) DEFAULT NULL,
|
||||
`avg_frequency` decimal(12,4) DEFAULT NULL,
|
||||
`hist_size` tinyint(3) unsigned DEFAULT NULL,
|
||||
`hist_type` enum('SINGLE_PREC_HB','DOUBLE_PREC_HB') COLLATE utf8_bin DEFAULT NULL,
|
||||
`histogram` varbinary(255) DEFAULT NULL,
|
||||
PRIMARY KEY (`db_name`,`table_name`,`column_name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Statistics on Columns';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `columns_priv`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `columns_priv` (
|
||||
`Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`User` char(80) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Table_name` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Column_name` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`Column_priv` set('Select','Insert','Update','References') CHARACTER SET utf8 NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`Host`,`Db`,`User`,`Table_name`,`Column_name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Column privileges';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `db`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `db` (
|
||||
`Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`User` char(80) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Select_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Insert_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Update_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Delete_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Drop_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Grant_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`References_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Index_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Alter_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_tmp_table_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Lock_tables_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Show_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Alter_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Execute_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Event_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Trigger_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
PRIMARY KEY (`Host`,`Db`,`User`),
|
||||
KEY `User` (`User`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Database privileges';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `event`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `event` (
|
||||
`db` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`name` char(64) NOT NULL DEFAULT '',
|
||||
`body` longblob NOT NULL,
|
||||
`definer` char(141) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`execute_at` datetime DEFAULT NULL,
|
||||
`interval_value` int(11) DEFAULT NULL,
|
||||
`interval_field` enum('YEAR','QUARTER','MONTH','DAY','HOUR','MINUTE','WEEK','SECOND','MICROSECOND','YEAR_MONTH','DAY_HOUR','DAY_MINUTE','DAY_SECOND','HOUR_MINUTE','HOUR_SECOND','MINUTE_SECOND','DAY_MICROSECOND','HOUR_MICROSECOND','MINUTE_MICROSECOND','SECOND_MICROSECOND') DEFAULT NULL,
|
||||
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`modified` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`last_executed` datetime DEFAULT NULL,
|
||||
`starts` datetime DEFAULT NULL,
|
||||
`ends` datetime DEFAULT NULL,
|
||||
`status` enum('ENABLED','DISABLED','SLAVESIDE_DISABLED') NOT NULL DEFAULT 'ENABLED',
|
||||
`on_completion` enum('DROP','PRESERVE') NOT NULL DEFAULT 'DROP',
|
||||
`sql_mode` set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') NOT NULL DEFAULT '',
|
||||
`comment` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`originator` int(10) unsigned NOT NULL,
|
||||
`time_zone` char(64) CHARACTER SET latin1 NOT NULL DEFAULT 'SYSTEM',
|
||||
`character_set_client` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
|
||||
`collation_connection` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
|
||||
`db_collation` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
|
||||
`body_utf8` longblob,
|
||||
PRIMARY KEY (`db`,`name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Events';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `func`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `func` (
|
||||
`name` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`ret` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`dl` char(128) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`type` enum('function','aggregate') CHARACTER SET utf8 NOT NULL,
|
||||
PRIMARY KEY (`name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='User defined functions';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `gtid_slave_pos`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `gtid_slave_pos` (
|
||||
`domain_id` int(10) unsigned NOT NULL,
|
||||
`sub_id` bigint(20) unsigned NOT NULL,
|
||||
`server_id` int(10) unsigned NOT NULL,
|
||||
`seq_no` bigint(20) unsigned NOT NULL,
|
||||
PRIMARY KEY (`domain_id`,`sub_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COMMENT='Replication slave GTID position';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `help_category`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `help_category` (
|
||||
`help_category_id` smallint(5) unsigned NOT NULL,
|
||||
`name` char(64) NOT NULL,
|
||||
`parent_category_id` smallint(5) unsigned DEFAULT NULL,
|
||||
`url` text NOT NULL,
|
||||
PRIMARY KEY (`help_category_id`),
|
||||
UNIQUE KEY `name` (`name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='help categories';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `help_keyword`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `help_keyword` (
|
||||
`help_keyword_id` int(10) unsigned NOT NULL,
|
||||
`name` char(64) NOT NULL,
|
||||
PRIMARY KEY (`help_keyword_id`),
|
||||
UNIQUE KEY `name` (`name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='help keywords';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `help_relation`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `help_relation` (
|
||||
`help_topic_id` int(10) unsigned NOT NULL,
|
||||
`help_keyword_id` int(10) unsigned NOT NULL,
|
||||
PRIMARY KEY (`help_keyword_id`,`help_topic_id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='keyword-topic relation';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `help_topic`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `help_topic` (
|
||||
`help_topic_id` int(10) unsigned NOT NULL,
|
||||
`name` char(64) NOT NULL,
|
||||
`help_category_id` smallint(5) unsigned NOT NULL,
|
||||
`description` text NOT NULL,
|
||||
`example` text NOT NULL,
|
||||
`url` text NOT NULL,
|
||||
PRIMARY KEY (`help_topic_id`),
|
||||
UNIQUE KEY `name` (`name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='help topics';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `host`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `host` (
|
||||
`Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Select_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Insert_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Update_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Delete_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Drop_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Grant_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`References_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Index_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Alter_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_tmp_table_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Lock_tables_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Show_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Alter_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Execute_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Trigger_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
PRIMARY KEY (`Host`,`Db`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Host privileges; Merged with database privileges';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `index_stats`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `index_stats` (
|
||||
`db_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`table_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`index_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`prefix_arity` int(11) unsigned NOT NULL,
|
||||
`avg_frequency` decimal(12,4) DEFAULT NULL,
|
||||
PRIMARY KEY (`db_name`,`table_name`,`index_name`,`prefix_arity`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Statistics on Indexes';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `innodb_index_stats`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `innodb_index_stats` (
|
||||
`database_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`table_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`index_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`stat_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`stat_value` bigint(20) unsigned NOT NULL,
|
||||
`sample_size` bigint(20) unsigned DEFAULT NULL,
|
||||
`stat_description` varchar(1024) COLLATE utf8_bin NOT NULL,
|
||||
PRIMARY KEY (`database_name`,`table_name`,`index_name`,`stat_name`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin STATS_PERSISTENT=0;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `innodb_table_stats`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `innodb_table_stats` (
|
||||
`database_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`table_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`n_rows` bigint(20) unsigned NOT NULL,
|
||||
`clustered_index_size` bigint(20) unsigned NOT NULL,
|
||||
`sum_of_other_index_sizes` bigint(20) unsigned NOT NULL,
|
||||
PRIMARY KEY (`database_name`,`table_name`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin STATS_PERSISTENT=0;
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `plugin`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `plugin` (
|
||||
`name` varchar(64) NOT NULL DEFAULT '',
|
||||
`dl` varchar(128) NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='MySQL plugins';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `proc`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `proc` (
|
||||
`db` char(64) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`name` char(64) NOT NULL DEFAULT '',
|
||||
`type` enum('FUNCTION','PROCEDURE') NOT NULL,
|
||||
`specific_name` char(64) NOT NULL DEFAULT '',
|
||||
`language` enum('SQL') NOT NULL DEFAULT 'SQL',
|
||||
`sql_data_access` enum('CONTAINS_SQL','NO_SQL','READS_SQL_DATA','MODIFIES_SQL_DATA') NOT NULL DEFAULT 'CONTAINS_SQL',
|
||||
`is_deterministic` enum('YES','NO') NOT NULL DEFAULT 'NO',
|
||||
`security_type` enum('INVOKER','DEFINER') NOT NULL DEFAULT 'DEFINER',
|
||||
`param_list` blob NOT NULL,
|
||||
`returns` longblob NOT NULL,
|
||||
`body` longblob NOT NULL,
|
||||
`definer` char(141) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`modified` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`sql_mode` set('REAL_AS_FLOAT','PIPES_AS_CONCAT','ANSI_QUOTES','IGNORE_SPACE','IGNORE_BAD_TABLE_OPTIONS','ONLY_FULL_GROUP_BY','NO_UNSIGNED_SUBTRACTION','NO_DIR_IN_CREATE','POSTGRESQL','ORACLE','MSSQL','DB2','MAXDB','NO_KEY_OPTIONS','NO_TABLE_OPTIONS','NO_FIELD_OPTIONS','MYSQL323','MYSQL40','ANSI','NO_AUTO_VALUE_ON_ZERO','NO_BACKSLASH_ESCAPES','STRICT_TRANS_TABLES','STRICT_ALL_TABLES','NO_ZERO_IN_DATE','NO_ZERO_DATE','INVALID_DATES','ERROR_FOR_DIVISION_BY_ZERO','TRADITIONAL','NO_AUTO_CREATE_USER','HIGH_NOT_PRECEDENCE','NO_ENGINE_SUBSTITUTION','PAD_CHAR_TO_FULL_LENGTH') NOT NULL DEFAULT '',
|
||||
`comment` text CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
|
||||
`character_set_client` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
|
||||
`collation_connection` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
|
||||
`db_collation` char(32) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
|
||||
`body_utf8` longblob,
|
||||
PRIMARY KEY (`db`,`name`,`type`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Stored Procedures';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `procs_priv`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `procs_priv` (
|
||||
`Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`User` char(80) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Routine_name` char(64) CHARACTER SET utf8 NOT NULL DEFAULT '',
|
||||
`Routine_type` enum('FUNCTION','PROCEDURE') COLLATE utf8_bin NOT NULL,
|
||||
`Grantor` char(141) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Proc_priv` set('Execute','Alter Routine','Grant') CHARACTER SET utf8 NOT NULL DEFAULT '',
|
||||
`Timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`Host`,`Db`,`User`,`Routine_name`,`Routine_type`),
|
||||
KEY `Grantor` (`Grantor`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Procedure privileges';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `proxies_priv`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `proxies_priv` (
|
||||
`Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`User` char(80) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Proxied_host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Proxied_user` char(80) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`With_grant` tinyint(1) NOT NULL DEFAULT '0',
|
||||
`Grantor` char(141) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
PRIMARY KEY (`Host`,`User`,`Proxied_host`,`Proxied_user`),
|
||||
KEY `Grantor` (`Grantor`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='User proxy privileges';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `roles_mapping`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `roles_mapping` (
|
||||
`Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`User` char(80) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Role` char(80) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Admin_option` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
UNIQUE KEY `Host` (`Host`,`User`,`Role`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Granted roles';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `servers`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `servers` (
|
||||
`Server_name` char(64) NOT NULL DEFAULT '',
|
||||
`Host` char(64) NOT NULL DEFAULT '',
|
||||
`Db` char(64) NOT NULL DEFAULT '',
|
||||
`Username` char(80) NOT NULL DEFAULT '',
|
||||
`Password` char(64) NOT NULL DEFAULT '',
|
||||
`Port` int(4) NOT NULL DEFAULT '0',
|
||||
`Socket` char(64) NOT NULL DEFAULT '',
|
||||
`Wrapper` char(64) NOT NULL DEFAULT '',
|
||||
`Owner` char(64) NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`Server_name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='MySQL Foreign Servers table';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `table_stats`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `table_stats` (
|
||||
`db_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`table_name` varchar(64) COLLATE utf8_bin NOT NULL,
|
||||
`cardinality` bigint(21) unsigned DEFAULT NULL,
|
||||
PRIMARY KEY (`db_name`,`table_name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Statistics on Tables';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `tables_priv`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `tables_priv` (
|
||||
`Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`User` char(80) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Table_name` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Grantor` char(141) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
`Table_priv` set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','Create View','Show view','Trigger') CHARACTER SET utf8 NOT NULL DEFAULT '',
|
||||
`Column_priv` set('Select','Insert','Update','References') CHARACTER SET utf8 NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`Host`,`Db`,`User`,`Table_name`),
|
||||
KEY `Grantor` (`Grantor`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Table privileges';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `time_zone`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `time_zone` (
|
||||
`Time_zone_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
||||
`Use_leap_seconds` enum('Y','N') NOT NULL DEFAULT 'N',
|
||||
PRIMARY KEY (`Time_zone_id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Time zones';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `time_zone_leap_second`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `time_zone_leap_second` (
|
||||
`Transition_time` bigint(20) NOT NULL,
|
||||
`Correction` int(11) NOT NULL,
|
||||
PRIMARY KEY (`Transition_time`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Leap seconds information for time zones';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `time_zone_name`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `time_zone_name` (
|
||||
`Name` char(64) NOT NULL,
|
||||
`Time_zone_id` int(10) unsigned NOT NULL,
|
||||
PRIMARY KEY (`Name`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Time zone names';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `time_zone_transition`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `time_zone_transition` (
|
||||
`Time_zone_id` int(10) unsigned NOT NULL,
|
||||
`Transition_time` bigint(20) NOT NULL,
|
||||
`Transition_type_id` int(10) unsigned NOT NULL,
|
||||
PRIMARY KEY (`Time_zone_id`,`Transition_time`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Time zone transitions';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `time_zone_transition_type`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `time_zone_transition_type` (
|
||||
`Time_zone_id` int(10) unsigned NOT NULL,
|
||||
`Transition_type_id` int(10) unsigned NOT NULL,
|
||||
`Offset` int(11) NOT NULL DEFAULT '0',
|
||||
`Is_DST` tinyint(3) unsigned NOT NULL DEFAULT '0',
|
||||
`Abbreviation` char(8) NOT NULL DEFAULT '',
|
||||
PRIMARY KEY (`Time_zone_id`,`Transition_type_id`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='Time zone transition types';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `user`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `user` (
|
||||
`Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`User` char(80) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`Password` char(41) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL DEFAULT '',
|
||||
`Select_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Insert_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Update_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Delete_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Drop_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Reload_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Shutdown_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Process_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`File_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Grant_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`References_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Index_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Alter_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Show_db_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Super_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_tmp_table_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Lock_tables_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Execute_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Repl_slave_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Repl_client_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Show_view_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Alter_routine_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_user_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Event_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Trigger_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`Create_tablespace_priv` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`ssl_type` enum('','ANY','X509','SPECIFIED') CHARACTER SET utf8 NOT NULL DEFAULT '',
|
||||
`ssl_cipher` blob NOT NULL,
|
||||
`x509_issuer` blob NOT NULL,
|
||||
`x509_subject` blob NOT NULL,
|
||||
`max_questions` int(11) unsigned NOT NULL DEFAULT '0',
|
||||
`max_updates` int(11) unsigned NOT NULL DEFAULT '0',
|
||||
`max_connections` int(11) unsigned NOT NULL DEFAULT '0',
|
||||
`max_user_connections` int(11) NOT NULL DEFAULT '0',
|
||||
`plugin` char(64) CHARACTER SET latin1 NOT NULL DEFAULT '',
|
||||
`authentication_string` text COLLATE utf8_bin NOT NULL,
|
||||
`password_expired` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`is_role` enum('N','Y') CHARACTER SET utf8 NOT NULL DEFAULT 'N',
|
||||
`default_role` char(80) COLLATE utf8_bin NOT NULL DEFAULT '',
|
||||
`max_statement_time` decimal(12,6) NOT NULL DEFAULT '0.000000',
|
||||
PRIMARY KEY (`Host`,`User`)
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Users and global privileges';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `general_log`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `general_log` (
|
||||
`event_time` timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6),
|
||||
`user_host` mediumtext NOT NULL,
|
||||
`thread_id` bigint(21) unsigned NOT NULL,
|
||||
`server_id` int(10) unsigned NOT NULL,
|
||||
`command_type` varchar(64) NOT NULL,
|
||||
`argument` mediumtext NOT NULL
|
||||
) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='General log';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
|
||||
--
|
||||
-- Table structure for table `slow_log`
|
||||
--
|
||||
|
||||
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||
/*!40101 SET character_set_client = utf8 */;
|
||||
CREATE TABLE IF NOT EXISTS `slow_log` (
|
||||
`start_time` timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6),
|
||||
`user_host` mediumtext NOT NULL,
|
||||
`query_time` time(6) NOT NULL,
|
||||
`lock_time` time(6) NOT NULL,
|
||||
`rows_sent` int(11) NOT NULL,
|
||||
`rows_examined` int(11) NOT NULL,
|
||||
`db` varchar(512) NOT NULL,
|
||||
`last_insert_id` int(11) NOT NULL,
|
||||
`insert_id` int(11) NOT NULL,
|
||||
`server_id` int(10) unsigned NOT NULL,
|
||||
`sql_text` mediumtext NOT NULL,
|
||||
`thread_id` bigint(21) unsigned NOT NULL,
|
||||
`rows_affected` int(11) NOT NULL
|
||||
) ENGINE=CSV DEFAULT CHARSET=utf8 COMMENT='Slow log';
|
||||
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||
|
||||
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
|
||||
|
||||
-- Dump completed on 2017-03-10 19:49:04
|
87
t/pt-online-schema-change/mariadb_flavour_105_plus.t
Executable file
87
t/pt-online-schema-change/mariadb_flavour_105_plus.t
Executable file
@@ -0,0 +1,87 @@
|
||||
#!/usr/bin/env perl
|
||||
|
||||
BEGIN {
|
||||
die "The PERCONA_TOOLKIT_BRANCH environment variable is not set.\n"
|
||||
unless $ENV{PERCONA_TOOLKIT_BRANCH} && -d $ENV{PERCONA_TOOLKIT_BRANCH};
|
||||
unshift @INC, "$ENV{PERCONA_TOOLKIT_BRANCH}/lib";
|
||||
};
|
||||
|
||||
use strict;
|
||||
use warnings FATAL => 'all';
|
||||
use Test::More;
|
||||
use PerconaTest;
|
||||
use File::Temp qw(tempfile);
|
||||
|
||||
use Data::Dumper;
|
||||
use PerconaTest;
|
||||
use Sandbox;
|
||||
|
||||
require "$trunk/bin/pt-online-schema-change";
|
||||
|
||||
my $dp = new DSNParser(opts=>$dsn_opts);
|
||||
my $sb = new Sandbox(basedir => '/tmp', DSNParser => $dp);
|
||||
my $dbh = $sb->get_dbh_for('source', { mysql_ssl => 0 });
|
||||
|
||||
my $db_flavor = VersionParser->new($dbh)->flavor();
|
||||
|
||||
if ( $sandbox_version lt 10.5 || $db_flavor !~ m/maria/i ) {
|
||||
plan skip_all => "Test requires MariaDB 10.5+";
|
||||
}
|
||||
else {
|
||||
plan tests => 4;
|
||||
}
|
||||
|
||||
# Prepare database and table
|
||||
diag("Creating test database and table...");
|
||||
$dbh->do("DROP DATABASE IF EXISTS test_flavor");
|
||||
$dbh->do("CREATE DATABASE test_flavor");
|
||||
$dbh->do("USE test_flavor");
|
||||
$dbh->do("CREATE TABLE test_table (id INT PRIMARY KEY AUTO_INCREMENT, test_column VARCHAR(255))");
|
||||
$dbh->do("INSERT INTO test_table VALUES(1, 'foobar')");
|
||||
$dbh->do("COMMIT");
|
||||
|
||||
# Run pt-online-schema-change with your full options
|
||||
my ($output, $exit_code) = full_output(
|
||||
sub { pt_online_schema_change::main(
|
||||
"D=test_flavor,t=test_table,h=127.1,P=12345,u=msandbox,p=msandbox,s=0",
|
||||
"--alter", "ADD INDEX test_column_idx (test_column)",
|
||||
qw(--execute)
|
||||
)
|
||||
},
|
||||
);
|
||||
|
||||
is(
|
||||
$exit_code,
|
||||
0,
|
||||
"pt-online-schema-change executed successfully"
|
||||
);
|
||||
|
||||
unlike(
|
||||
$output,
|
||||
qr/flavor mismatch|not supported/i,
|
||||
"No flavor mismatch or unsupported error"
|
||||
) or diag($output);
|
||||
|
||||
# Confirm index exists
|
||||
$output = `/tmp/12345/use -Ne "SELECT COUNT(*) FROM information_schema.STATISTICS WHERE INDEX_NAME = 'test_column_idx' AND TABLE_SCHEMA = 'test_flavor' AND TABLE_NAME = 'test_table'" 2>/dev/null`;
|
||||
|
||||
chomp $output;
|
||||
|
||||
is(
|
||||
$output,
|
||||
1,
|
||||
"Index 'test_column_idx' created"
|
||||
);
|
||||
|
||||
# Cleanup
|
||||
#$dbh->do("DROP DATABASE test_flavor");
|
||||
|
||||
# #############################################################################
|
||||
# Done.
|
||||
# #############################################################################
|
||||
|
||||
$sb->wipe_clean($dbh);
|
||||
ok($sb->ok(), "Sandbox servers") or BAIL_OUT(__FILE__ . " broke the sandbox");
|
||||
|
||||
done_testing;
|
||||
|
Reference in New Issue
Block a user