mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
Mdev-10664 Add statuses about optimistic parallel replication stalls
In this commit we are adding three more status variable to SHOW SLAVE STATUS. Slave_DDL_Events and Slave_Non_Transactional_Events. Slave_DDL_Groups:- This status variable counts the occurrence of DDL statements Slave_Non_Transactional_Groups:- This variable count the occurrence of non-transnational event group. Slave_Transactional_Groups:- This variable count the occurrence of transnational event group. Patch Credit:- Kristian Nielsen
This commit is contained in:
parent
547b00d910
commit
419385dbf1
14 changed files with 296 additions and 26 deletions
|
@ -70,10 +70,13 @@ if ($tmp)
|
||||||
--echo SQL_Delay 0
|
--echo SQL_Delay 0
|
||||||
--echo SQL_Remaining_Delay NULL
|
--echo SQL_Remaining_Delay NULL
|
||||||
--echo Slave_SQL_Running_State
|
--echo Slave_SQL_Running_State
|
||||||
|
--echo Slave_DDL_Groups #
|
||||||
|
--echo Slave_Non_Transactional_Groups #
|
||||||
|
--echo Slave_Transactional_Groups #
|
||||||
}
|
}
|
||||||
if (!$tmp) {
|
if (!$tmp) {
|
||||||
# Note: after WL#5177, fields 13-18 shall not be filtered-out.
|
# Note: after WL#5177, fields 13-18 shall not be filtered-out.
|
||||||
--replace_column 4 # 5 # 6 # 7 # 8 # 9 # 10 # 13 # 14 # 15 # 16 # 17 # 18 # 22 # 23 # 24 # 25 # 26 # 40 # 41 # 42 # 44 #
|
--replace_column 4 # 5 # 6 # 7 # 8 # 9 # 10 # 13 # 14 # 15 # 16 # 17 # 18 # 22 # 23 # 24 # 25 # 26 # 40 # 41 # 42 # 44 # 51 # 52 # 53 #
|
||||||
query_vertical
|
query_vertical
|
||||||
SHOW SLAVE STATUS;
|
SHOW SLAVE STATUS;
|
||||||
}
|
}
|
||||||
|
|
|
@ -89,17 +89,17 @@ MASTER 2.2
|
||||||
# EOF
|
# EOF
|
||||||
#
|
#
|
||||||
show all slaves status;
|
show all slaves status;
|
||||||
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Slave_DDL_Groups Slave_Non_Transactional_Groups Slave_Transactional_Groups Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
||||||
Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_1 60 master-bin.000001 <read_master_log_pos> relay.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 1 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 1073741824 7 0 60.000
|
Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_1 60 master-bin.000001 <read_master_log_pos> relay.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 1 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 0 0 0 1073741824 7 0 60.000
|
||||||
MASTER 2.2 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> relay-master@00202@002e2.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space2> None 0 No 0 No 0 0 2 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 1073741824 7 0 60.000
|
MASTER 2.2 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> relay-master@00202@002e2.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space2> None 0 No 0 No 0 0 2 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 0 0 0 1073741824 7 0 60.000
|
||||||
include/wait_for_slave_to_start.inc
|
include/wait_for_slave_to_start.inc
|
||||||
set default_master_connection = 'MASTER 2.2';
|
set default_master_connection = 'MASTER 2.2';
|
||||||
include/wait_for_slave_to_start.inc
|
include/wait_for_slave_to_start.inc
|
||||||
set default_master_connection = '';
|
set default_master_connection = '';
|
||||||
show all slaves status;
|
show all slaves status;
|
||||||
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Slave_DDL_Groups Slave_Non_Transactional_Groups Slave_Transactional_Groups Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
||||||
Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_1 60 master-bin.000001 <read_master_log_pos> relay.000004 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 1 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 1073741824 6 0 60.000
|
Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_1 60 master-bin.000001 <read_master_log_pos> relay.000004 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 1 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 0 0 0 1073741824 6 0 60.000
|
||||||
MASTER 2.2 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> relay-master@00202@002e2.000004 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space2> None 0 No 0 No 0 0 2 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 1073741824 6 0 60.000
|
MASTER 2.2 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> relay-master@00202@002e2.000004 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space2> None 0 No 0 No 0 0 2 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 0 0 0 1073741824 6 0 60.000
|
||||||
#
|
#
|
||||||
# List of files matching '*info*' pattern
|
# List of files matching '*info*' pattern
|
||||||
# after slave server restart
|
# after slave server restart
|
||||||
|
|
6
mysql-test/suite/multi_source/multi_parallel.cnf
Normal file
6
mysql-test/suite/multi_source/multi_parallel.cnf
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
!include my.cnf
|
||||||
|
[mysqld.1]
|
||||||
|
gtid_domain_id=1
|
||||||
|
|
||||||
|
[mysqld.2]
|
||||||
|
gtid_domain_id=2
|
64
mysql-test/suite/multi_source/multi_parallel.result
Normal file
64
mysql-test/suite/multi_source/multi_parallel.result
Normal file
|
@ -0,0 +1,64 @@
|
||||||
|
connect master1,127.0.0.1,root,,,$SERVER_MYPORT_1;
|
||||||
|
connect master2,127.0.0.1,root,,,$SERVER_MYPORT_2;
|
||||||
|
connect slave,127.0.0.1,root,,,$SERVER_MYPORT_3;
|
||||||
|
set global slave_parallel_threads=10;
|
||||||
|
change master 'master1' to
|
||||||
|
master_port=MYPORT_1,
|
||||||
|
master_host='127.0.0.1',
|
||||||
|
master_user='root';
|
||||||
|
change master 'master2' to
|
||||||
|
master_port=MYPORT_2,
|
||||||
|
master_host='127.0.0.1',
|
||||||
|
master_user='root';
|
||||||
|
start all slaves;
|
||||||
|
set default_master_connection = 'master1';
|
||||||
|
include/wait_for_slave_to_start.inc
|
||||||
|
set default_master_connection = 'master2';
|
||||||
|
include/wait_for_slave_to_start.inc
|
||||||
|
## Slave status variable
|
||||||
|
set default_master_connection = 'master1';
|
||||||
|
show status like 'slave_running';
|
||||||
|
Variable_name Value
|
||||||
|
Slave_running ON
|
||||||
|
set default_master_connection = 'master2';
|
||||||
|
show status like 'slave_running';
|
||||||
|
Variable_name Value
|
||||||
|
Slave_running ON
|
||||||
|
#master 1
|
||||||
|
connection master1;
|
||||||
|
##Running CURD operation
|
||||||
|
connection slave;
|
||||||
|
Slave_DDL_Groups= 20;
|
||||||
|
Slave_Non_Transactional_Groups= 20;
|
||||||
|
Slave_Transactional_Groups= 0;
|
||||||
|
#master 2
|
||||||
|
connection master2;
|
||||||
|
##Running CURD operation
|
||||||
|
connection slave;
|
||||||
|
Slave_DDL_Groups= 20;
|
||||||
|
Slave_Non_Transactional_Groups= 20;
|
||||||
|
Slave_Transactional_Groups= 0;
|
||||||
|
#master 1
|
||||||
|
connection master1;
|
||||||
|
##Running CURD operation
|
||||||
|
connection slave;
|
||||||
|
Slave_DDL_Groups= 40;
|
||||||
|
Slave_Non_Transactional_Groups= 20;
|
||||||
|
Slave_Transactional_Groups= 20;
|
||||||
|
stop all slaves;
|
||||||
|
Warnings:
|
||||||
|
Note 1938 SLAVE 'master2' stopped
|
||||||
|
Note 1938 SLAVE 'master1' stopped
|
||||||
|
set default_master_connection = 'master1';
|
||||||
|
include/wait_for_slave_to_stop.inc
|
||||||
|
set default_master_connection = 'master2';
|
||||||
|
include/wait_for_slave_to_stop.inc
|
||||||
|
set global slave_parallel_threads=0;
|
||||||
|
include/reset_master_slave.inc
|
||||||
|
disconnect slave;
|
||||||
|
connection master1;
|
||||||
|
include/reset_master_slave.inc
|
||||||
|
disconnect master1;
|
||||||
|
connection master2;
|
||||||
|
include/reset_master_slave.inc
|
||||||
|
disconnect master2;
|
125
mysql-test/suite/multi_source/multi_parallel.test
Normal file
125
mysql-test/suite/multi_source/multi_parallel.test
Normal file
|
@ -0,0 +1,125 @@
|
||||||
|
# This test file tests events counter like Slave_ddl_groups,
|
||||||
|
# Slave_non_transactional_groups, Slave_transactional_groups
|
||||||
|
--source include/not_embedded.inc
|
||||||
|
--source include/have_innodb.inc
|
||||||
|
--let $rpl_server_count= 0
|
||||||
|
|
||||||
|
--connect (master1,127.0.0.1,root,,,$SERVER_MYPORT_1)
|
||||||
|
--connect (master2,127.0.0.1,root,,,$SERVER_MYPORT_2)
|
||||||
|
--connect (slave,127.0.0.1,root,,,$SERVER_MYPORT_3)
|
||||||
|
|
||||||
|
#save state
|
||||||
|
--let $par_thd= `select @@slave_parallel_threads;`
|
||||||
|
|
||||||
|
set global slave_parallel_threads=10;
|
||||||
|
|
||||||
|
--replace_result $SERVER_MYPORT_1 MYPORT_1
|
||||||
|
eval change master 'master1' to
|
||||||
|
master_port=$SERVER_MYPORT_1,
|
||||||
|
master_host='127.0.0.1',
|
||||||
|
master_user='root';
|
||||||
|
|
||||||
|
--replace_result $SERVER_MYPORT_2 MYPORT_2
|
||||||
|
eval change master 'master2' to
|
||||||
|
master_port=$SERVER_MYPORT_2,
|
||||||
|
master_host='127.0.0.1',
|
||||||
|
master_user='root';
|
||||||
|
|
||||||
|
|
||||||
|
#start all slaves
|
||||||
|
--disable_warnings
|
||||||
|
start all slaves;
|
||||||
|
--enable_warnings
|
||||||
|
set default_master_connection = 'master1';
|
||||||
|
--source include/wait_for_slave_to_start.inc
|
||||||
|
|
||||||
|
set default_master_connection = 'master2';
|
||||||
|
--source include/wait_for_slave_to_start.inc
|
||||||
|
|
||||||
|
--echo ## Slave status variable
|
||||||
|
|
||||||
|
set default_master_connection = 'master1';
|
||||||
|
show status like 'slave_running';
|
||||||
|
|
||||||
|
set default_master_connection = 'master2';
|
||||||
|
show status like 'slave_running';
|
||||||
|
|
||||||
|
|
||||||
|
--echo #master 1
|
||||||
|
--connection master1
|
||||||
|
|
||||||
|
--let $loop_counter=10
|
||||||
|
--let $table_engine=myisam
|
||||||
|
--source multi_parallel_loop.inc
|
||||||
|
--save_master_pos
|
||||||
|
|
||||||
|
--connection slave
|
||||||
|
|
||||||
|
--sync_with_master 0,'master1'
|
||||||
|
--let $status= query_get_value(show slave 'master1' status, Slave_DDL_Groups, 1)
|
||||||
|
--echo Slave_DDL_Groups= $status;
|
||||||
|
|
||||||
|
--let $status= query_get_value(show slave 'master1' status, Slave_Non_Transactional_Groups, 1)
|
||||||
|
--echo Slave_Non_Transactional_Groups= $status;
|
||||||
|
|
||||||
|
--let $status= query_get_value(show slave 'master1' status, Slave_Transactional_Groups, 1)
|
||||||
|
--echo Slave_Transactional_Groups= $status;
|
||||||
|
|
||||||
|
--echo #master 2
|
||||||
|
--connection master2
|
||||||
|
|
||||||
|
--let $loop_counter=10
|
||||||
|
--let $table_engine=myisam
|
||||||
|
--source multi_parallel_loop.inc
|
||||||
|
--save_master_pos
|
||||||
|
|
||||||
|
--connection slave
|
||||||
|
--sync_with_master 0,'master2'
|
||||||
|
--let $status= query_get_value(show slave 'master2' status, Slave_DDL_Groups, 1)
|
||||||
|
--echo Slave_DDL_Groups= $status;
|
||||||
|
|
||||||
|
--let $status= query_get_value(show slave 'master2' status, Slave_Non_Transactional_Groups, 1)
|
||||||
|
--echo Slave_Non_Transactional_Groups= $status;
|
||||||
|
|
||||||
|
--let $status= query_get_value(show slave 'master2' status, Slave_Transactional_Groups, 1)
|
||||||
|
--echo Slave_Transactional_Groups= $status;
|
||||||
|
|
||||||
|
--echo #master 1
|
||||||
|
--connection master1
|
||||||
|
|
||||||
|
--let $loop_counter=10
|
||||||
|
--let $table_engine=innodb
|
||||||
|
--source multi_parallel_loop.inc
|
||||||
|
--save_master_pos
|
||||||
|
|
||||||
|
--connection slave
|
||||||
|
|
||||||
|
--sync_with_master 0,'master1'
|
||||||
|
--let $status= query_get_value(show slave 'master1' status, Slave_DDL_Groups, 1)
|
||||||
|
--echo Slave_DDL_Groups= $status;
|
||||||
|
|
||||||
|
--let $status= query_get_value(show slave 'master1' status, Slave_Non_Transactional_Groups, 1)
|
||||||
|
--echo Slave_Non_Transactional_Groups= $status;
|
||||||
|
|
||||||
|
--let $status= query_get_value(show slave 'master1' status, Slave_Transactional_Groups, 1)
|
||||||
|
--echo Slave_Transactional_Groups= $status;
|
||||||
|
|
||||||
|
|
||||||
|
# Cleanup
|
||||||
|
stop all slaves;
|
||||||
|
set default_master_connection = 'master1';
|
||||||
|
--source include/wait_for_slave_to_stop.inc
|
||||||
|
|
||||||
|
set default_master_connection = 'master2';
|
||||||
|
--source include/wait_for_slave_to_stop.inc
|
||||||
|
|
||||||
|
--eval set global slave_parallel_threads=$par_thd
|
||||||
|
|
||||||
|
--source include/reset_master_slave.inc
|
||||||
|
--disconnect slave
|
||||||
|
--connection master1
|
||||||
|
--source include/reset_master_slave.inc
|
||||||
|
--disconnect master1
|
||||||
|
--connection master2
|
||||||
|
--source include/reset_master_slave.inc
|
||||||
|
--disconnect master2
|
19
mysql-test/suite/multi_source/multi_parallel_loop.inc
Normal file
19
mysql-test/suite/multi_source/multi_parallel_loop.inc
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
#create a table,insert data and drop table
|
||||||
|
|
||||||
|
#parameters
|
||||||
|
# loop_counter
|
||||||
|
# table_engine
|
||||||
|
--echo ##Running CURD operation
|
||||||
|
--disable_query_log
|
||||||
|
while ($loop_counter)
|
||||||
|
{
|
||||||
|
#DDL statement
|
||||||
|
--eval create table t1(a int primary key) engine=$table_engine;
|
||||||
|
|
||||||
|
#non trans update statement
|
||||||
|
insert into t1 values(1);
|
||||||
|
insert into t1 values(2);
|
||||||
|
drop table t1;
|
||||||
|
--dec $loop_counter
|
||||||
|
}
|
||||||
|
--enable_query_log
|
|
@ -13,15 +13,15 @@ insert into t1 values (1),(2);
|
||||||
connection slave;
|
connection slave;
|
||||||
stop slave 'master1';
|
stop slave 'master1';
|
||||||
show slave 'master1' status;
|
show slave 'master1' status;
|
||||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State
|
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Slave_DDL_Groups Slave_Non_Transactional_Groups Slave_Transactional_Groups
|
||||||
127.0.0.1 root MYPORT_1 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-master1.000002 <relay_log_pos> master-bin.000001 No No 0 0 <read_master_log_pos> <relay_log_space> None 0 No NULL No 0 0 1 No conservative 0 NULL
|
127.0.0.1 root MYPORT_1 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-master1.000002 <relay_log_pos> master-bin.000001 No No 0 0 <read_master_log_pos> <relay_log_space> None 0 No NULL No 0 0 1 No conservative 0 NULL 2 1 0
|
||||||
mysqld-relay-bin-master1.000001
|
mysqld-relay-bin-master1.000001
|
||||||
mysqld-relay-bin-master1.000002
|
mysqld-relay-bin-master1.000002
|
||||||
mysqld-relay-bin-master1.index
|
mysqld-relay-bin-master1.index
|
||||||
reset slave 'master1';
|
reset slave 'master1';
|
||||||
show slave 'master1' status;
|
show slave 'master1' status;
|
||||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State
|
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Slave_DDL_Groups Slave_Non_Transactional_Groups Slave_Transactional_Groups
|
||||||
127.0.0.1 root MYPORT_1 60 4 <relay_log_pos> No No 0 0 0 <relay_log_space> None 0 No NULL No 0 0 1 No conservative 0 NULL
|
127.0.0.1 root MYPORT_1 60 4 <relay_log_pos> No No 0 0 0 <relay_log_space> None 0 No NULL No 0 0 1 No conservative 0 NULL 2 1 0
|
||||||
reset slave 'master1' all;
|
reset slave 'master1' all;
|
||||||
show slave 'master1' status;
|
show slave 'master1' status;
|
||||||
ERROR HY000: There is no master connection 'master1'
|
ERROR HY000: There is no master connection 'master1'
|
||||||
|
|
|
@ -18,9 +18,9 @@ connection slave;
|
||||||
connection master2;
|
connection master2;
|
||||||
connection slave;
|
connection slave;
|
||||||
show all slaves status;
|
show all slaves status;
|
||||||
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Slave_DDL_Groups Slave_Non_Transactional_Groups Slave_Transactional_Groups Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
||||||
slave1 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_1 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-slave1.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 1 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 1073741824 7 0 60.000
|
slave1 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_1 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-slave1.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 1 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 0 0 0 1073741824 7 0 60.000
|
||||||
slave2 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-slave2.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 2 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 1073741824 7 0 60.000
|
slave2 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-slave2.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 2 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 0 0 0 1073741824 7 0 60.000
|
||||||
start all slaves;
|
start all slaves;
|
||||||
stop slave 'slave1';
|
stop slave 'slave1';
|
||||||
show slave 'slave1' status;
|
show slave 'slave1' status;
|
||||||
|
@ -74,21 +74,24 @@ Parallel_Mode conservative
|
||||||
SQL_Delay 0
|
SQL_Delay 0
|
||||||
SQL_Remaining_Delay NULL
|
SQL_Remaining_Delay NULL
|
||||||
Slave_SQL_Running_State
|
Slave_SQL_Running_State
|
||||||
|
Slave_DDL_Groups 0
|
||||||
|
Slave_Non_Transactional_Groups 0
|
||||||
|
Slave_Transactional_Groups 0
|
||||||
reset slave 'slave1';
|
reset slave 'slave1';
|
||||||
show all slaves status;
|
show all slaves status;
|
||||||
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Slave_DDL_Groups Slave_Non_Transactional_Groups Slave_Transactional_Groups Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
||||||
slave1 127.0.0.1 root MYPORT_1 60 4 <relay_log_pos> No No 0 0 0 <relay_log_space1> None 0 No NULL No 0 0 1 No conservative 0 NULL 0 1073741824 7 0 60.000
|
slave1 127.0.0.1 root MYPORT_1 60 4 <relay_log_pos> No No 0 0 0 <relay_log_space1> None 0 No NULL No 0 0 1 No conservative 0 NULL 0 0 0 0 1073741824 7 0 60.000
|
||||||
slave2 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-slave2.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 2 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 1073741824 7 0 60.000
|
slave2 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-slave2.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 2 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 0 0 0 1073741824 7 0 60.000
|
||||||
reset slave 'slave1' all;
|
reset slave 'slave1' all;
|
||||||
show all slaves status;
|
show all slaves status;
|
||||||
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Slave_DDL_Groups Slave_Non_Transactional_Groups Slave_Transactional_Groups Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
||||||
slave2 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-slave2.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 2 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 1073741824 7 0 60.000
|
slave2 Slave has read all relay log; waiting for the slave I/O thread to update it Waiting for master to send event 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-slave2.000002 <relay_log_pos> master-bin.000001 Yes Yes 0 0 <read_master_log_pos> <relay_log_space1> None 0 No 0 No 0 0 2 No conservative 0 NULL Slave has read all relay log; waiting for the slave I/O thread to update it 0 0 0 0 1073741824 7 0 60.000
|
||||||
stop all slaves;
|
stop all slaves;
|
||||||
Warnings:
|
Warnings:
|
||||||
Note 1938 SLAVE 'slave2' stopped
|
Note 1938 SLAVE 'slave2' stopped
|
||||||
show all slaves status;
|
show all slaves status;
|
||||||
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Slave_DDL_Groups Slave_Non_Transactional_Groups Slave_Transactional_Groups Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
||||||
slave2 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-slave2.000002 <relay_log_pos> master-bin.000001 No No 0 0 <read_master_log_pos> <relay_log_space1> None 0 No NULL No 0 0 2 No conservative 0 NULL 0 1073741824 7 0 60.000
|
slave2 127.0.0.1 root MYPORT_2 60 master-bin.000001 <read_master_log_pos> mysqld-relay-bin-slave2.000002 <relay_log_pos> master-bin.000001 No No 0 0 <read_master_log_pos> <relay_log_space1> None 0 No NULL No 0 0 2 No conservative 0 NULL 0 0 0 0 1073741824 7 0 60.000
|
||||||
stop all slaves;
|
stop all slaves;
|
||||||
include/reset_master_slave.inc
|
include/reset_master_slave.inc
|
||||||
disconnect slave;
|
disconnect slave;
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
include/master-slave.inc
|
include/master-slave.inc
|
||||||
[connection master]
|
[connection master]
|
||||||
show slave status;
|
show slave status;
|
||||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State
|
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Slave_DDL_Groups Slave_Non_Transactional_Groups Slave_Transactional_Groups
|
||||||
show slave '' status;
|
show slave '' status;
|
||||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State
|
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Slave_DDL_Groups Slave_Non_Transactional_Groups Slave_Transactional_Groups
|
||||||
show all slaves status;
|
show all slaves status;
|
||||||
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
Connection_name Slave_SQL_State Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master Master_SSL_Verify_Server_Cert Last_IO_Errno Last_IO_Error Last_SQL_Errno Last_SQL_Error Replicate_Ignore_Server_Ids Master_Server_Id Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Gtid_IO_Pos Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode SQL_Delay SQL_Remaining_Delay Slave_SQL_Running_State Slave_DDL_Groups Slave_Non_Transactional_Groups Slave_Transactional_Groups Retried_transactions Max_relay_log_size Executed_log_entries Slave_received_heartbeats Slave_heartbeat_period Gtid_Slave_Pos
|
||||||
#
|
#
|
||||||
# Check error handling
|
# Check error handling
|
||||||
#
|
#
|
||||||
|
|
|
@ -53,6 +53,7 @@
|
||||||
#include "rpl_constants.h"
|
#include "rpl_constants.h"
|
||||||
#include "sql_digest.h"
|
#include "sql_digest.h"
|
||||||
#include "zlib.h"
|
#include "zlib.h"
|
||||||
|
#include "my_atomic.h"
|
||||||
|
|
||||||
#define my_b_write_string(A, B) my_b_write((A), (uchar*)(B), (uint) (sizeof(B) - 1))
|
#define my_b_write_string(A, B) my_b_write((A), (uchar*)(B), (uint) (sizeof(B) - 1))
|
||||||
|
|
||||||
|
@ -7973,6 +7974,20 @@ Gtid_log_event::do_apply_event(rpl_group_info *rgi)
|
||||||
}
|
}
|
||||||
|
|
||||||
DBUG_ASSERT((bits & OPTION_GTID_BEGIN) == 0);
|
DBUG_ASSERT((bits & OPTION_GTID_BEGIN) == 0);
|
||||||
|
|
||||||
|
Master_info *mi=rgi->rli->mi;
|
||||||
|
switch (flags2 & (FL_DDL | FL_TRANSACTIONAL))
|
||||||
|
{
|
||||||
|
case FL_TRANSACTIONAL:
|
||||||
|
my_atomic_add64_explicit(&mi->total_trans_groups, 1, MY_MEMORY_ORDER_RELAXED);
|
||||||
|
break;
|
||||||
|
case FL_DDL:
|
||||||
|
my_atomic_add64_explicit(&mi->total_ddl_groups, 1, MY_MEMORY_ORDER_RELAXED);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
my_atomic_add64_explicit(&mi->total_non_trans_groups, 1, MY_MEMORY_ORDER_RELAXED);
|
||||||
|
}
|
||||||
|
|
||||||
if (flags2 & FL_STANDALONE)
|
if (flags2 & FL_STANDALONE)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
|
|
@ -42,7 +42,8 @@ Master_info::Master_info(LEX_CSTRING *connection_name_arg,
|
||||||
using_gtid(USE_GTID_NO), events_queued_since_last_gtid(0),
|
using_gtid(USE_GTID_NO), events_queued_since_last_gtid(0),
|
||||||
gtid_reconnect_event_skip_count(0), gtid_event_seen(false),
|
gtid_reconnect_event_skip_count(0), gtid_event_seen(false),
|
||||||
in_start_all_slaves(0), in_stop_all_slaves(0), in_flush_all_relay_logs(0),
|
in_start_all_slaves(0), in_stop_all_slaves(0), in_flush_all_relay_logs(0),
|
||||||
users(0), killed(0)
|
users(0), killed(0),
|
||||||
|
total_ddl_groups(0), total_non_trans_groups(0), total_trans_groups(0)
|
||||||
{
|
{
|
||||||
char *tmp;
|
char *tmp;
|
||||||
host[0] = 0; user[0] = 0; password[0] = 0;
|
host[0] = 0; user[0] = 0; password[0] = 0;
|
||||||
|
|
10
sql/rpl_mi.h
10
sql/rpl_mi.h
|
@ -327,6 +327,16 @@ class Master_info : public Slave_reporting_capability
|
||||||
uint users; /* Active user for object */
|
uint users; /* Active user for object */
|
||||||
uint killed;
|
uint killed;
|
||||||
|
|
||||||
|
|
||||||
|
/* No of DDL event group */
|
||||||
|
volatile uint64 total_ddl_groups;
|
||||||
|
|
||||||
|
/* No of non-transactional event group*/
|
||||||
|
volatile uint64 total_non_trans_groups;
|
||||||
|
|
||||||
|
/* No of transactional event group*/
|
||||||
|
volatile uint64 total_trans_groups;
|
||||||
|
|
||||||
/* domain-id based filter */
|
/* domain-id based filter */
|
||||||
Domain_id_filter domain_id_filter;
|
Domain_id_filter domain_id_filter;
|
||||||
|
|
||||||
|
|
24
sql/slave.cc
24
sql/slave.cc
|
@ -3121,6 +3121,19 @@ void show_master_info_get_fields(THD *thd, List<Item> *field_list,
|
||||||
field_list->push_back(new (mem_root)
|
field_list->push_back(new (mem_root)
|
||||||
Item_empty_string(thd, "Slave_SQL_Running_State",
|
Item_empty_string(thd, "Slave_SQL_Running_State",
|
||||||
20));
|
20));
|
||||||
|
field_list->push_back(new (mem_root)
|
||||||
|
Item_return_int(thd, "Slave_DDL_Groups", 20,
|
||||||
|
MYSQL_TYPE_LONGLONG),
|
||||||
|
mem_root);
|
||||||
|
field_list->push_back(new (mem_root)
|
||||||
|
Item_return_int(thd, "Slave_Non_Transactional_Groups", 20,
|
||||||
|
MYSQL_TYPE_LONGLONG),
|
||||||
|
mem_root);
|
||||||
|
field_list->push_back(new (mem_root)
|
||||||
|
Item_return_int(thd, "Slave_Transactional_Groups", 20,
|
||||||
|
MYSQL_TYPE_LONGLONG),
|
||||||
|
mem_root);
|
||||||
|
|
||||||
if (full)
|
if (full)
|
||||||
{
|
{
|
||||||
field_list->push_back(new (mem_root)
|
field_list->push_back(new (mem_root)
|
||||||
|
@ -3351,6 +3364,17 @@ static bool send_show_master_info_data(THD *thd, Master_info *mi, bool full,
|
||||||
// Slave_SQL_Running_State
|
// Slave_SQL_Running_State
|
||||||
protocol->store(slave_sql_running_state, &my_charset_bin);
|
protocol->store(slave_sql_running_state, &my_charset_bin);
|
||||||
|
|
||||||
|
uint64 events;
|
||||||
|
events= (uint64)my_atomic_load64_explicit((volatile int64 *)
|
||||||
|
&mi->total_ddl_groups, MY_MEMORY_ORDER_RELAXED);
|
||||||
|
protocol->store(events);
|
||||||
|
events= (uint64)my_atomic_load64_explicit((volatile int64 *)
|
||||||
|
&mi->total_non_trans_groups, MY_MEMORY_ORDER_RELAXED);
|
||||||
|
protocol->store(events);
|
||||||
|
events= (uint64)my_atomic_load64_explicit((volatile int64 *)
|
||||||
|
&mi->total_trans_groups, MY_MEMORY_ORDER_RELAXED);
|
||||||
|
protocol->store(events);
|
||||||
|
|
||||||
if (full)
|
if (full)
|
||||||
{
|
{
|
||||||
protocol->store((uint32) mi->rli.retried_trans);
|
protocol->store((uint32) mi->rli.retried_trans);
|
||||||
|
|
|
@ -467,7 +467,7 @@ static void test_prepare_simple()
|
||||||
strmov(query, "SHOW SLAVE STATUS");
|
strmov(query, "SHOW SLAVE STATUS");
|
||||||
stmt= mysql_simple_prepare(mysql, query);
|
stmt= mysql_simple_prepare(mysql, query);
|
||||||
check_stmt(stmt);
|
check_stmt(stmt);
|
||||||
DIE_UNLESS(mysql_stmt_field_count(stmt) == 50);
|
DIE_UNLESS(mysql_stmt_field_count(stmt) == 53);
|
||||||
mysql_stmt_close(stmt);
|
mysql_stmt_close(stmt);
|
||||||
|
|
||||||
/* show master status */
|
/* show master status */
|
||||||
|
|
Loading…
Reference in a new issue