86 lines
2.7 KiB
Plaintext
86 lines
2.7 KiB
Plaintext
include/group_replication.inc [rpl_server_count=3]
|
|
Warnings:
|
|
Note #### Sending passwords in plain text without SSL/TLS is extremely insecure.
|
|
Note #### Storing MySQL user name or password information in the master info repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START SLAVE; see the 'START SLAVE Syntax' in the MySQL Manual for more information.
|
|
[connection server1]
|
|
[connection server1]
|
|
SET sql_log_bin=0;
|
|
CREATE TABLE t1(a int primary key);
|
|
SET sql_log_bin=1;
|
|
include/start_and_bootstrap_group_replication.inc
|
|
[connection server2]
|
|
SET sql_log_bin=0;
|
|
CREATE TABLE t1(a int primary key);
|
|
SET sql_log_bin=1;
|
|
include/start_group_replication.inc
|
|
[connection server1]
|
|
CREATE PROCEDURE dml_operations(IN p INT,IN q INT)
|
|
BEGIN
|
|
declare x INT;
|
|
set x=p;
|
|
while x<q do
|
|
insert into t1 values (x);
|
|
update t1 set a=x+400 where a=x;
|
|
delete from t1 where a<420;
|
|
set x=x+1;
|
|
end while;
|
|
end$$
|
|
|
|
----call procedure----
|
|
call dml_operations(1,100);
|
|
|
|
[connection server3]
|
|
set sql_log_bin=0;
|
|
CREATE TABLE t1(a int primary key);
|
|
SET sql_log_bin=1;
|
|
LOCK TABLES t1 READ;
|
|
[connection server_3]
|
|
include/start_group_replication.inc
|
|
[connection server1]
|
|
----call procedure----
|
|
call dml_operations(100,200);
|
|
|
|
[connection server_1]
|
|
[connection server3]
|
|
UNLOCK TABLES;
|
|
# killing
|
|
# Kill and restart:--group_replication_local_address=GROUP_REPLICATION_LOCAL_ADDRESS --group_replication_group_seeds=GROUP_REPLICATION_GROUP_SEEDS --group_replication_group_name=GROUP_REPLICATION_GROUP_NAME
|
|
# restarting
|
|
include/rpl_reconnect.inc
|
|
[connection server2]
|
|
# check that there are 2 mebers in the group
|
|
include/rpl_gr_wait_for_number_of_members.inc
|
|
[connection server1]
|
|
----call procedure----
|
|
call dml_operations(200,300);
|
|
|
|
[connection server3]
|
|
LOCK TABLES t1 READ;
|
|
[connection server_3]
|
|
start group_replication;
|
|
include/gr_wait_for_member_state.inc
|
|
[connection server1]
|
|
----call procedure----
|
|
call dml_operations(300,400);
|
|
|
|
[connection server3]
|
|
UNLOCK TABLES;
|
|
[connection server3]
|
|
# killing
|
|
# Kill and restart:--group_replication_local_address=GROUP_REPLICATION_LOCAL_ADDRESS --group_replication_group_seeds=GROUP_REPLICATION_GROUP_SEEDS --group_replication_group_name=GROUP_REPLICATION_GROUP_NAME
|
|
# restarting
|
|
include/rpl_reconnect.inc
|
|
[connection server2]
|
|
# check that there are 2 mebers in a group
|
|
include/rpl_gr_wait_for_number_of_members.inc
|
|
[connection server1]
|
|
[connection server3]
|
|
RESET SLAVE FOR CHANNEL 'group_replication_recovery';
|
|
CHANGE MASTER TO MASTER_USER= 'root' FOR CHANNEL 'group_replication_recovery';
|
|
include/start_group_replication.inc
|
|
include/rpl_sync.inc
|
|
include/diff_tables.inc [server1:t1, server2:t1, server3:t1]
|
|
drop table t1;
|
|
drop procedure dml_operations;
|
|
include/group_replication_end.inc
|