免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: simeiren
打印 上一主题 下一主题

求助MySQL同步问题(Replication)! [复制链接]

论坛徽章:
0
11 [报告]
发表于 2008-05-13 13:02 |只看该作者
auto_increment
自增字段在复制的时候会出问题的

论坛徽章:
0
12 [报告]
发表于 2008-05-13 17:24 |只看该作者
本帖最后由 todayhero 于 2014-09-02 08:08 编辑

这个问题造成,我认为是由于数据重复复制引起的.具体原因是这样的.
slave中假设存在100条记录.当你start slave时.会从master中得到log-bin日志文件,根据日志文件更新slave的内容.此时slave的内容已经存在.所以才出现这样的问题.


解决办法:
很明显就是避免slave中已经存在的记录和master中的log-bin要不冲突即可.具体解决办法.最笨的.一定可以用的.

1.就是让master数据库只读(也就是不执行insert update).把master数据库copy一份到slave中,这样master和slave数据库的内容会完全一样.

2.master数据库执行reset master.忘记过去的log-bin日志文件.使用全新空的日志文件

3.重启start slave数据库,

4.取消master的只读.

QQ  欢迎拍砖指导

论坛徽章:
0
13 [报告]
发表于 2008-05-13 17:35 |只看该作者
原帖由 angeljyt 于 2008-5-13 13:02 发表
auto_increment
自增字段在复制的时候会出问题的



谁说的。

论坛徽章:
0
14 [报告]
发表于 2008-05-13 17:44 |只看该作者
这个问题我以前遇到过.可能和你的应用提交的sql语句有关.master-slave本身没有问题.如果插入这样的数据和slave的数据一样的.建议还是将这和种错误让slave自动跳过..

论坛徽章:
0
15 [报告]
发表于 2008-05-14 16:56 |只看该作者
看来我还不是专家啊,没人看我的回复

论坛徽章:
0
16 [报告]
发表于 2008-05-14 17:24 |只看该作者

回复 #15 showsa 的帖子

从你的回复中得到了很大帮助。
不要自谦。

论坛徽章:
0
17 [报告]
发表于 2008-05-15 09:34 |只看该作者
原帖由 showsa 于 2008-5-14 16:56 发表
看来我还不是专家啊,没人看我的回复



大家都在看那

论坛徽章:
0
18 [报告]
发表于 2008-07-02 16:12 |只看该作者

根本就没有说出解决问题的办法

说来说去,根本就没有一个好的解决办法,我用的数据库版本,平台都是一样的,一同步就会出现键重复,我总不能老是象你们说的那样SKIP或者跳过1062等错误吧,有谁解决过这问题的说一下,没弄过的最好别误导别人,我就是用了SKIP ALL造成数据库不统一,切换数据库时丢失了数据。

论坛徽章:
0
19 [报告]
发表于 2008-11-24 19:19 |只看该作者

。。。。。

在这里是没有找到好的解决方法, 只不过知道了合理的原因。

论坛徽章:
0
20 [报告]
发表于 2008-11-26 00:28 |只看该作者

我遇到过两次,说给大家听听,仅供参考。

场景可能不太一样,仅供参考。

第一次是在 Cluster  -------> MyISAM 同步数据的时候,
   版本: MySQL5.1.23-ndb-6.2* ,
   在Master上更新一个有主键的表的时候(注意是Update),在从服务器上会出现 主键重复的错误。
   解决方法: 在主服务器上加参数: ndb-log-update-as-write=0 解决了。
   http://bugs.mysql.com/bug.php?id=39622

第二次问题是出在 应用的驱动程序上,
    connector/j 的 5.0.8 的驱动 去连接 5.1 的数据库的时候,
    用的主从结构,在连接字符串的地方 如果没有特别指明:
     jdbc.mysql:replication/10.4.1.11:3306,10.4.1.12:3306)  
    (5.0.8 用类似 jdbc.mysql:/10.4.1.11:3306,10.4.1.12:3306)  
  应用程序(java,jdbc,5.0.8驱动 连接 MySQL5.1)在写入的过程中会 随机的 (300 个基本上会出一个)
   出现向从服务器插入数据的情况,而且可能是主的从的都插入数据。。。所以肯定出现主从冲突了。
  这个问题解决 也好解决,就是重新找了个新驱动就好了。


所以,单看 出现主从冲突了,如果不是偶尔一个人为的失误误插入数据了,最好是要找到根本原因的,
用跳过的方法非常不推荐。
可以从以下一点点的考虑:
版本、主从版本一致兼容、版本的bug、应用的驱动、应用驱动的bug、应用是不是写入的链接错误等等方面去逐个
排除一下。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP