这个错误表示在执行CREATE TABLE ... SELECT语句时,违反了全局事务标识符(GTID)的一致性。要解决这个问题,可以尝试以下方法:
-
禁用GTID:在MySQL配置文件中添加
gtid_mode=OFF
和enforce_gtid_consistency=OFF
,然后重启MySQL服务器。这将禁用GTID功能,但可能会导致数据不一致的风险。 -
使用不支持GTID的存储引擎:将新表的存储引擎更改为不支持GTID的引擎,例如MyISAM。但是,请注意,这可能会导致其他与GTID相关的问题。
-
分步执行:将操作分为两个步骤,首先创建一个空表,然后使用INSERT INTO ... SELECT语句将数据插入到新表中。这样可以避免GTID一致性问题。