免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3603 | 回复: 0
打印 上一主题 下一主题

mysql slave Incorrect string value [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-19 16:35 |只看该作者 |倒序浏览

                一台重要库的slave的sql_thread停止了。
Last_Errno: 1366
                   Last_Error: Error 'Incorrect
string value: '\xCE\xD2\xB6\xD4\xD5\xE2...' for column 'title' at row
1' on query. Default database: 'mail_app'. Query: 'insert into
vote_topic(id,userid,title,category) values
(21,0x746573743130407669702E736F68752E636F6D,0xCED2B6D4D5E2B8F6B9A6C4DCB5C4D0E8C7F3B3CCB6C8,11)'
这个slave可是相当关键,不能置后,看了一下出问题的表记录数很少,并且从中文内容上看起来像是还在测试,先把出问题的sql跳过再说。
日志里记录了两个表出了同步错误。都是utf8的表。
这两个表的数据在master和slave上不一致了,master要多几条。
错误是可重现的,把未同步过去的数据删除,让应用再执行同样操作,sql_thread立刻停止。
应用jdbc连接串里有characterEncoding=gbk,改成utf8就好了。问题解决了,但原因不明。master和slave为何有不同的结果,字符集的设置是一样的,表结构和表的字符集也是一样的。
又对比了relay log和bin log,内容是完全一样的,包括其中设置字符集的语句:
/*!\C gbk *//*!*/;
SET @@session.character_set_client=28,@@session.collation_connection=28,@@session.collation_server=8/*!*/;
同样的动作在master和slave上结果不同,原因不明。
mysql版本是5.1.30
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/25477/showart_2153339.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP