MySQL 5.7版本说明
在Group Replication拓扑中,在执行数据定义语句(通常称为数据定义语言(DDL))时需要格外小心。由于MySQL不支持原子的或事务性的DDL,因此不能乐观地执行DDL语句,然后在需要时回滚。因此,缺乏原子性并不直接适合Group replication所基于的乐观复制范式。
因此,在复制数据定义语句时需要更加小心。当模式操作尚未完成并复制到所有地方时,需要通过相同的服务器处理模式更改和对象包含的数据更改。如果不这样做,可能会导致数据不一致。
请注意
如果组是在单主模式下部署的,那么这不是问题,因为所有更改都是通过相同的服务器(主服务器)执行的。
警告
MySQL的DDL执行不是原子的或事务的。服务器执行和提交时不先确保组协议。因此,您必须通过相同的服务器为相同的对象路由DDL和DML,而DDL正在执行,还没有复制到所有地方。