我使用 mysql 复制。在从属服务器上,我读到 aa.err 语句可能不安全,无法以语句格式登录。语句:update idv_product set visit = visit+1 where id = '173' limit 1 我不明白,请指导我解决上述错误。
答案1
出现该错误信息的原因是依赖于记录在磁盘上的存储顺序。您可以采取一些措施来阻止错误发生:
- 使用基于行的复制或者混合复制而不是基于语句的复制。
- 确保在 WHERE 子句中使用的字段是主键(我认为唯一键不足以阻止错误消息,即使它们足以阻止错误。)
- 从查询中删除 LIMIT 1 子句。如果
id
是唯一的,则查询仍然只会更新一行。 - 在受影响的查询中对唯一键使用 ORDER BY 子句。这对于您提供的查询没有意义,但对于导致此错误消息的某些其他查询却有意义。