MySQL双主如何解决主键冲突问题
2015-04-30 17:18
281 查看
搭建了个双主,突然想到如果表设置了自增主键的话,当业务同时向双库中插入一条数据,这时候情况是什么样子的呢?
比如:主库A和主库B上的一个表数据为: 12 'ninhao' 。当业务同时写入数据后主库A的数据是13 'new nihao' ? 那主库B上的数据是什么呢?主键也是13 ?
建议类似双主这种情况:
事先设置好offset和increment的值,即:实现设置好自增字段的初始值和步长。主库A为奇数起步,主库B为偶数起步。两者都采用相同的步长。
1)、设置主主服务器的自增长偏移位置不同:
A :auto_increment_offset=3
B :auto_increment_offset=4
2)、设置主主服务器步长相同:
auto_increment_increment=2
双主的这个问题解决了。另外又有一个想法:如果业务同时update 一条数据,现在又是神情况呢?
还有一个问题,主库A上创建库,创建表,插入数据,主库B直接报错了。
请关注下篇博客:用crontab模拟同时update。
比如:主库A和主库B上的一个表数据为: 12 'ninhao' 。当业务同时写入数据后主库A的数据是13 'new nihao' ? 那主库B上的数据是什么呢?主键也是13 ?
建议类似双主这种情况:
事先设置好offset和increment的值,即:实现设置好自增字段的初始值和步长。主库A为奇数起步,主库B为偶数起步。两者都采用相同的步长。
1)、设置主主服务器的自增长偏移位置不同:
A :auto_increment_offset=3
B :auto_increment_offset=4
2)、设置主主服务器步长相同:
auto_increment_increment=2
双主的这个问题解决了。另外又有一个想法:如果业务同时update 一条数据,现在又是神情况呢?
还有一个问题,主库A上创建库,创建表,插入数据,主库B直接报错了。
请关注下篇博客:用crontab模拟同时update。
相关文章推荐
- 如何解决金山词霸与卡巴斯基的冲突问题
- 如何解决PPC QQ 与 钻石机diamond输入发冲突,死机的问题
- 如何解决SQL Server主键和自动编号问题
- 如何设置自增主键列(历史遗留问题解决)
- win 7 遇到闪屏 问题 如何解决??似乎和QQ2009冲突有关
- 如何解决端口冲突问题
- struts2 迭代器标签iterator嵌套 如何加选择性参数和名称冲突问题的解决
- JQuery ajax 如何设置同步调用(同时只能触发一个函数) 解决与层显示信息时候的冲突问题
- 如何解决散列表的散列值的冲突问题 [好]
- 如何检测和解决端口冲突问题?
- screen+minicom,如何解决ctrl+a冲突的问题
- java 网络编程【7】 如何检测和解决端口冲突问题?
- MyEclipse8.5中关于SSH的运用如何解决jar包冲突的问题
- Puppet扩展篇2-如何使用虚拟资源解决puppet冲突问题
- 如何利用PopupWindow实现弹出菜单并解决焦点获取以及与软键盘冲突问题-FenGKun
- 如何解决ecshop中jquery冲突?使用jquery.json.js代替transport.org.js中部份代码,完美解决问题。
- 如何解决C程序中不同静态库之间的符号冲突问题
- android 布局 使用 viewPager 时,如何解决 和 子页面 长按滑动 冲突问题
- 如何利用PopupWindow实现弹出菜单并解决焦点获取以及与软键盘冲突问题
- 如何解决blur事件和click事件冲突问题?