MySQL报错:ERROR 3546 (HY000): @@GLOBAL.GTID_PURGED cannot be changed: the new value must be a superset
发布时间
阅读量:
阅读量
解决方案
今天在set gtid的时候报了下面的错误:
sql>set global gtid_purged="dd3ce11f-30f4-11ea-86b2-42010a8e0014:1-1211761271";
ERROR 3546 (HY000): @@GLOBAL.GTID_PURGED cannot be changed: the new value must be a superset of the old value
bash
其实这个报错很简单,意思就是我们set的值必须得是当前机器上面gtid_purged的子集,及我们手动设置的set应该要小于等于当前机器上面的gtid_purged。
我们自己的机器上面的可以通过下面的sql查看:
[(none)]>show variables like 'gtid%';
+----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|Variable_name|Value|
+----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|gtid_executed|dd3ce11f-30f4-11ea-86b2-42010a8e0014:1-121176111|
|---|---|
|gtid_mode|ON|
|gtid_next|AUTOMATIC|
|gtid_owned||
|gtid_purged|dd3ce11f-30f4-11ea-86b2-42010a8e0014:1-1211761111|
+----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
sql

可以看到我们设置的集合是大于这个的,所以报错。
如何解决,分情况而言。
1.如果是搭建从库的话:
可以先执行一句reset master在进行set就不会报错。
2.如果是修复数据的话:
一定要确定好自己的集合完全包含当前机器的gtid_purged集合的时候再reset master。
全部评论 (0)
还没有任何评论哟~
