-
Notifications
You must be signed in to change notification settings - Fork 4k
/
Copy pathgr_acf_master_retry.result
81 lines (67 loc) · 4.52 KB
/
gr_acf_master_retry.result
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
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 connection metadata repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START REPLICA; see the 'START REPLICA Syntax' in the MySQL Manual for more information.
[connection server1]
# 1. Start GR on M1(primary) and M2(secondary),
# and create user rpl_user.
[connection server1]
SET sql_log_bin=0;
CREATE USER 'rpl_user' IDENTIFIED BY '';
GRANT ALL PRIVILEGES ON *.* TO 'rpl_user';
FLUSH PRIVILEGES;
Warnings:
Warning 1681 'FLUSH PRIVILEGES' is deprecated and will be removed in a future release.
SET sql_log_bin=1;
include/start_and_bootstrap_group_replication.inc
[connection server2]
include/start_group_replication.inc
# 2. Add asynchronous connection failover servers and
# verify that they are inserted successfully in
# performance_schema.replication_asynchronous_connection_failover.
[connection server1]
[connection server3]
SELECT asynchronous_connection_failover_add_managed('ch1_3', 'GroupReplication', 'GROUP_NAME', '127.0.0.1', SERVER_MYPORT_1, '', 70, 60);;
asynchronous_connection_failover_add_managed('ch1_3', 'GroupReplication', 'GROUP_NAME', '127.0.0.1', SERVER_MYPORT_1, '', 70, 60)
The UDF asynchronous_connection_failover_add_managed() executed successfully.
include/assert.inc ['There is one row in performance_schema.replication_asynchronous_connection_failover']
# 3. Create and start new channel ch1_3: M3(replica), M1(source)
# and verify channel ch1_3 IO and SQL THREADS are ON.
[connection server3]
CHANGE REPLICATION SOURCE TO SOURCE_HOST='127.0.0.1', SOURCE_USER='rpl_user' , SOURCE_AUTO_POSITION=1, SOURCE_CONNECTION_AUTO_FAILOVER=1, SOURCE_PORT=SERVER_1_PORT, SOURCE_CONNECT_RETRY=1, SOURCE_RETRY_COUNT=2 for channel 'ch1_3';
Warnings:
Note 1759 Sending passwords in plain text without SSL/TLS is extremely insecure.
Note 1760 Storing MySQL user name or password information in the connection metadata repository is not secure and is therefore not recommended. Please consider using the USER and PASSWORD connection options for START REPLICA; see the 'START REPLICA Syntax' in the MySQL Manual for more information.
include/rpl/start_replica.inc [FOR CHANNEL 'ch1_3']
include/assert.inc [Verify channel ch1_3 IO_THREAD is ON]
include/assert.inc [Verify channel ch1_3 SQL_THREAD is ON]
# 4. Verify 2 senders are added automatically to
# replication_asynchronous_connection_failover table.
[connection server3]
include/assert.inc ['Connected to server1 now.']
# 5. STOP GR on M1.
[connection server1]
include/stop_group_replication.inc
# 6. Verify error ER_RPL_ASYNC_CHANNEL_CANT_CONNECT is logged in M3.
[connection server3]
include/assert.inc ['Check that replication_asynchronous_connection_failover table has 2 rows.']
# 7. Cleanup.
[connection server1]
SET sql_log_bin=0;
DROP USER 'rpl_user';
SET sql_log_bin=1;
[connection server3]
include/rpl/stop_replica.inc [FOR CHANNEL 'ch1_3']
include/rpl/reset_replica.inc
SELECT asynchronous_connection_failover_delete_managed('ch1_3', 'GROUP_NAME');
asynchronous_connection_failover_delete_managed('ch1_3', 'GROUP_NAME')
The UDF asynchronous_connection_failover_delete_managed() executed successfully.
SET SESSION sql_log_bin = 0;
call mtr.add_suppression("The source .* for channel 'ch1_3' has joined the group .*, and so added its entry into replication_asynchronous_connection_failover table.");
call mtr.add_suppression("The Monitor IO thread detected that the source .* does not belong to the group majority, thence the channel .* will try to connect to another source.*");
call mtr.add_suppression("The IO thread detected that the source .* does not belong to the group majority, thence the channel .* will try to connect to another source.");
call mtr.add_suppression("The Monitor IO thread failed to connect to the source .* for channel 'ch1_3', thence it will try to connect to another source.");
call mtr.add_suppression("The group .* for the channel .* has been removed, and so removed its entry from replication_asynchronous_connection_failover_managed and all the group members from replication_asynchronous_connection_failover table.");
call mtr.add_suppression("The group .* for the channel .* has been added, and so added its entry in replication_asynchronous_connection_failover_managed and source to replication_asynchronous_connection_failover table.");
SET SESSION sql_log_bin = 1;
include/group_replication_end.inc