互联网服务MySQL双活自增ID

MySQL数据库双活方案中,两边自增ID增长如何设计?这种情况导致自增ID增高过快的问题如何解决和避免?

MySQL数据库双活方案中,两边自增ID增长如何设计?这种情况导致自增ID增高过快的问题如何解决和避免?

参与9

2同行回答

冯帅冯帅数据库管理员贝壳金服
其实这个问题,看你站在什么样的角度,你是需要强自增还是弱自增,强自增的话,需要构建一个生成自增的服务,双活的两端应用,通过自增服务获取当前自增,然后生成相应的数据,这里面的构成会比较复杂,弱自增简单点的可以采用MySQL数据库自带的自增,因为是双活的架构,需要在两边设置自增起...显示全部

其实这个问题,看你站在什么样的角度,你是需要强自增还是弱自增,强自增的话,需要构建一个生成自增的服务,双活的两端应用,通过自增服务获取当前自增,然后生成相应的数据,这里面的构成会比较复杂,弱自增简单点的可以采用MySQL数据库自带的自增,因为是双活的架构,需要在两边设置自增起始值和步长,构成一个奇偶的增长环境。
至于你说的自增ID增长过快,增长过快无非是正常的表数据所需要的,那么这个就需要考虑后期的分表规则,防止单表数据过大,如果是其他原因造成的就需要分析业务了。

收起
融资租赁 · 2017-10-20
浏览1978
liucj2004liucj2004其它undefined
最简单的方法,自增ID使用无符号数,然后使用bigint,大表的话进行拆分。因为bigint肯定够了,如果不够,肯定是单表过大了。显示全部

最简单的方法,自增ID使用无符号数,然后使用bigint,大表的话进行拆分。因为bigint肯定够了,如果不够,肯定是单表过大了。

收起
农业其它 · 2017-10-19
浏览1790

提问者

hanzhenhua
数据库管理员饿了么

问题来自

问题状态

  • 发布时间:2017-10-19
  • 关注会员:3 人
  • 问题浏览:4589
  • 最近回答:2017-10-20
  • X社区推广