加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

如何理解MySQL主从复制中关于AUTO_INCREMENT的奇怪难题

发布时间:2023-07-25 13:18:10 所属栏目:MySql教程 来源:
导读:今天就跟大家聊聊有关如何理解MySQL主从复制中关于AUTO_INCREMENT的奇怪问题,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。昨天修改一个表的字段,发现

今天就跟大家聊聊有关如何理解MySQL主从复制中关于AUTO_INCREMENT的奇怪问题,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

昨天修改一个表的字段,发现主从复制同步失效了,但同步进程没有出错,mysql日志也没有出错,仔细查找了一下原因,发现是新增的自增主键字段的起始值在主从库上不一致,导致按主键更新数据时无法在从库找到对应记录。事情经过如下:[@more@]

表table1(主库为innodb类型,从库为MyISAM类型),有一自增主键pid,现将pid改成非自增,非主键,另外增加一自增主键。

alter table table1 modify pid int not null;

alter talbe table1 drop primary key;

alter table table1 add aid int not null auto_increment primary key first;

结果主库上表table1的auto_increment属性自动没有了,默认重新从1开始,但从库上表table1的auto_increment属性还有,还是以前pid的最大值。

奇怪的是我把从库也改成innodb就没有这个问题了,怀疑是mysql的bug,在此记录一下,以后要注意了。

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章