Error number: MY-011683; Symbol: ER_GRP_RPL_SINGLE_PRIM_MODE_NOT_ALLOWED_WITH_UPDATE_EVERYWHERE; SQLSTATE: HY000
Message: It is not allowed to run single primary mode with ‘group_replication_enforce_update_everywhere_checks’ enabled.
## 错误说明
MySQL 错误号: MY-011683,符号:ER_GRP_RPL_SINGLE_PRIM_MODE_NOT_ALLOWED_WITH_UPDATE_EVERYWHERE,SQLSTATE:HY000 指的是在使用Group Replication 模式的 My SQL服务器上使用 UPDATE EVERYWHERE 子句时会出现的错误。这个错误指的是在没有知道结果时,SQL 语句不能在 Group Replication 模式下运行。
当分布式环境下使用MySQL 进行查询操作时,可能会出现这个错误。这个错误是由于Group Replication 模式不允许使用 UPDATE EVERYWHERE 子句时,而该子句尝试修改数据库中多个主机上的数据。因此,当同时使用Group Replication 模式和’UPDATE EVERYWHERE’时,可能会出现这个错误。
## 解决方法
为了解决这个错误,可以采取以下几种方案:
– 尝试更新一台服务器上的数据,而不是尝试更新多台服务器上的数据;
– 可以取消使用Group Replication 模式,而使用MySQL的标准复制功能;
– 使用MySQL Shell 中的Transactions API,允许在Group Replication 模式下使用 UPDATE 和 DELETE 语句;
– 使用Guidelines API;
– 使用 MySQL Shell 中的 Routing API 进行更新;
– 在 GROUP REPLICATION 模式下,分离更新数据和复制数据,以保证系统的可用性。