MGR 导入失败

MySQL version:8.0.18-commercial MySQL Enterprise Server - Commercial
HA: MGR
问题:

导入sql文件,大小371MB
导入数据过程中
[Err] 3100 - Error on observer while running replication hook 'before_commit'.

报错日志:

2020-06-27T10:24:29.094866+08:00 79 [ERROR] [MY-011608] [Repl] Plugin group_replication reported: 'Error on session 79. 
  Transaction of size 1060900441 exceeds specified limit 150000000. To increase the limit please adjust group_replication_transaction_size_limit option.'
2020-06-27T10:24:29.373716+08:00 79 [ERROR] [MY-010207] [Repl] Run function 'before_commit' in plugin 'group_replication' failed

官方解释:

Use the system variable group_replication_transaction_size_limit to specify a maximum transaction size that the group will accept. 
  In MySQL 5.7, this system variable defaults to zero, but in MySQL 8.0, it defaults to a maximum transaction size of 150000000 bytes (approximately 143 MB). 
  Transactions above this limit are rolled back and are not sent to Group Replication's Group Communication System (GCS) for distribution to the group. 
  Adjust the value of this variable depending on the maximum message size that you need the group to tolerate, bearing in mind that the time taken 
  to process a transaction is proportional to its size.

解决

仅调整导入所在MySQL 的参数
mysql> show global variables like '%group_replication_transaction_size_limit%';
+------------------------------------------+-----------+
| Variable_name                            | Value     |
+------------------------------------------+-----------+
| group_replication_transaction_size_limit | 150000000 |
+------------------------------------------+-----------+
1 row in set (0.01 sec)

mysql> set global  group_replication_transaction_size_limit=1500000000;
Query OK, 0 rows affected (0.00 sec)

[Msg] Finished - 3104720 queries executed successfully

导入成功后,将该节点的group_replication_transaction_size_limit 修改回去

猜你喜欢

转载自www.cnblogs.com/Coye/p/13197986.html
MGR
今日推荐