Closed listen-zhou closed 5 years ago
我断点走查看字段最终解析的编码变成了UTF-8,我查过字段编码也是gbk_chinese_ci,不知道怎么就变成了UTF-8编码
这应该是mysql 的一个bug,你们所有表都是gbk 呢?
发自我的iPhone
------------------ 原始邮件 ------------------ 发件人: 周梦强 <notifications@github.com> 发送时间: 2019年8月28日 16:55 收件人: rolandhe/hiriver <hiriver@noreply.github.com> 抄送: Subscribed <subscribed@noreply.github.com> 主题: 回复:[rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3)
我断点走查看字段最终解析的编码变成了UTF-8,我查过字段编码也是gbk_chinese_ci,不知道怎么就变成了UTF08编码
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.
这应该是mysql 的一个bug,你们所有表都是gbk 呢? 发自我的iPhone … ------------------ 原始邮件 ------------------ 发件人: 周梦强 <notifications@github.com> 发送时间: 2019年8月28日 16:55 收件人: rolandhe/hiriver <hiriver@noreply.github.com> 抄送: Subscribed <subscribed@noreply.github.com> 主题: 回复:[rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3) 我断点走查看字段最终解析的编码变成了UTF-8,我查过字段编码也是gbk_chinese_ci,不知道怎么就变成了UTF08编码 — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.
是的,这个数据库是上游数据服务商提供的,所以我们也无法修改数据库编码,我们只能读取不能修改,我们公司有使用otter同步的,正常不乱码,我在想是不是代码中需要哪些地方设置一下编码,比如在伪装成slave的时候设置一下编码格式?otter太重了,不适合我这个需求,所以就没有用otter。
更新了,你可以强制配置一下。
可以设置MysqlStreamSource的TableMetaProiverFactory属性来解决,目前可以ConfCharsetTableMetaProiverFactory实现类来强制设置字符集。
------------------ 原始邮件 ------------------ 发件人: "周梦强"notifications@github.com; 发送时间: 2019年9月3日(星期二) 上午9:46 收件人: "rolandhe/hiriver"hiriver@noreply.github.com; 抄送: "乌鸦"rolandhe@qq.com;"Comment"comment@noreply.github.com; 主题: Re: [rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3)
这应该是mysql 的一个bug,你们所有表都是gbk 呢? 发自我的iPhone … ------------------ 原始邮件 ------------------ 发件人: 周梦强 notifications@github.com 发送时间: 2019年8月28日 16:55 收件人: rolandhe/hiriver hiriver@noreply.github.com 抄送: Subscribed subscribed@noreply.github.com 主题: 回复:[rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3) 我断点走查看字段最终解析的编码变成了UTF-8,我查过字段编码也是gbk_chinese_ci,不知道怎么就变成了UTF08编码 — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.
是的,这个数据库是上游数据服务商提供的,所以我们也无法修改数据库编码,我们只能读取不能修改,我们公司有使用otter同步的,正常不乱码,我在想是不是代码中需要哪些地方设置一下编码,比如在伪装成slave的时候设置一下编码格式?otter太重了,不适合我这个需求,所以就没有用otter。
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
更新了,你可以强制配置一下。 可以设置MysqlStreamSource的TableMetaProiverFactory属性来解决,目前可以ConfCharsetTableMetaProiverFactory实现类来强制设置字符集。 … ------------------ 原始邮件 ------------------ 发件人: "周梦强"notifications@github.com; 发送时间: 2019年9月3日(星期二) 上午9:46 收件人: "rolandhe/hiriver"hiriver@noreply.github.com; 抄送: "乌鸦"rolandhe@qq.com;"Comment"comment@noreply.github.com; 主题: Re: [rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3) 这应该是mysql 的一个bug,你们所有表都是gbk 呢? 发自我的iPhone … ------------------ 原始邮件 ------------------ 发件人: 周梦强 notifications@github.com 发送时间: 2019年8月28日 16:55 收件人: rolandhe/hiriver hiriver@noreply.github.com 抄送: Subscribed subscribed@noreply.github.com 主题: 回复:[rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3) 我断点走查看字段最终解析的编码变成了UTF-8,我查过字段编码也是gbk_chinese_ci,不知道怎么就变成了UTF08编码 — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread. 是的,这个数据库是上游数据服务商提供的,所以我们也无法修改数据库编码,我们只能读取不能修改,我们公司有使用otter同步的,正常不乱码,我在想是不是代码中需要哪些地方设置一下编码,比如在伪装成slave的时候设置一下编码格式?otter太重了,不适合我这个需求,所以就没有用otter。 — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
好的,我试试,谢谢,测试完成后我会反馈是否解决。
你是说这样修改吗?我刚才试了,不行还是乱码,而且字段的字符集编码还是UTF-8
我觉得字符集的设置问题出在这个地方,目前我正在调试
show column list 反回的charset 字段永远是33,33表示utf8,另外show column list 命令要废掉了,后面会改为读information 库------------------ 原始邮件 ------------------ 发件人: "周梦强"notifications@github.com 发送时间: 2019年9月3日(星期二) 中午11:12 收件人: "rolandhe/hiriver"hiriver@noreply.github.com; 抄送: "rolandhe"rolandhe@qq.com;"Comment"comment@noreply.github.com; 主题: Re: [rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3)
我觉得zifc字符集的设置问题出在这个地方,目前我正在调试
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
那是不是可以确定就是这个33 的问题了?那这个问题大概什么时候能修复呢,希望修复后通知我一下,谢谢。
我强制把zif字符集改为gbk,结果还真成功了,
可以先解决你的问题。
------------------ 原始邮件 ------------------ 发件人: "周梦强"notifications@github.com; 发送时间: 2019年9月3日(星期二) 中午12:01 收件人: "rolandhe/hiriver"hiriver@noreply.github.com; 抄送: "乌鸦"rolandhe@qq.com;"Comment"comment@noreply.github.com; 主题: Re: [rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3)
我强制把zif字符集改为gbk,结果还真成功了,
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
还有类似这样的问题,对于decimal类型的值,在解析的时候会报错, 有些小数位比较多的会报这样的错,具体没有统计,大概在超过8位小数位吧
还有类似这样的问题,对于decimal类型的值,在解析的时候会报错, 有些小数位比较多的会报这样的错,具体没有统计,大概在超过8位小数位吧
可以先解决你的问题。 […](#) ------------------ 原始邮件 ------------------ 发件人: "周梦强" ; 发送时间: 2019年9月3日(星期二) 中午12:01 收件人: "rolandhe/hiriver" ; 抄送: "乌鸦" ;"Comment" ; 主题: Re: [rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3) 我强制把zif字符集改为gbk,结果还真成功了, — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
按照你的方法,已经解决gbk乱码的问题,没有改源码,就是加了你的配置,谢谢。
fix
发自我的iPhone
------------------ 原始邮件 ------------------ 发件人: 周梦强 <notifications@github.com> 发送时间: 2019年9月3日 12:28 收件人: rolandhe/hiriver <hiriver@noreply.github.com> 抄送: rolandhe <rolandhe@qq.com>, Comment <comment@noreply.github.com> 主题: 回复:[rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3)
还有类似这样的问题,对于decimal类型的值,在解析的时候会报错,
有些小数位比较多的会报这样的错,具体没有统计,大概在超过8位小数位吧
可以先解决你的问题。
… ------------------ 原始邮件 ------------------ 发件人: "周梦强"notifications@github.com; 发送时间: 2019年9月3日(星期二) 中午12:01 收件人: "rolandhe/hiriver"hiriver@noreply.github.com; 抄送: "乌鸦"rolandhe@qq.com;"Comment"comment@noreply.github.com; 主题: Re: [rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3) 我强制把zif字符集改为gbk,结果还真成功了, — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
按照你的方法,已经接近gbk乱码的问题,没有改源码,就是加了你的配置,谢谢。
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
所有问题都解决了,配置gbk的功能删除了,自动识别字符集。
------------------ 原始邮件 ------------------ 发件人: "周梦强"notifications@github.com; 发送时间: 2019年9月3日(星期二) 中午12:28 收件人: "rolandhe/hiriver"hiriver@noreply.github.com; 抄送: "乌鸦"rolandhe@qq.com;"Comment"comment@noreply.github.com; 主题: Re: [rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3)
还有类似这样的问题,对于decimal类型的值,在解析的时候会报错,
有些小数位比较多的会报这样的错,具体没有统计,大概在超过8位小数位吧
可以先解决你的问题。
… ------------------ 原始邮件 ------------------ 发件人: "周梦强"notifications@github.com; 发送时间: 2019年9月3日(星期二) 中午12:01 收件人: "rolandhe/hiriver"hiriver@noreply.github.com; 抄送: "乌鸦"rolandhe@qq.com;"Comment"comment@noreply.github.com; 主题: Re: [rolandhe/hiriver] MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决 (#3) 我强制把zif字符集改为gbk,结果还真成功了, — You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
按照你的方法,已经接近gbk乱码的问题,没有改源码,就是加了你的配置,谢谢。
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.
经过我测试,gbk乱码的问题还是没有解决 注释掉之后,还是会有中文乱码,没法办我还是把这个配置加上了
MySQL5.6,数据库编码gbk,表编码gbk_chinese_ci,binlog解析中文乱码,不知道怎么解决?