Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ 功能建议 ] 能不能换一下binlog2sql版本或者更换其他闪回工具 #1224

Closed
peng19832 opened this issue Nov 10, 2021 · 18 comments

Comments

@peng19832
Copy link
Contributor

目前遇到的问题/使用障碍

目前1.8.1带的binlog2sql工具,好像对8.0支持不行,解析出来的回滚语句有问题,我这边使用出现过:

  1. 回滚语句数量缺失;
  2. 回滚语句中字段值错位,字段a的值,解析给了字段b;
  3. 还有过无法解析出来的情况

希望如何解决/实现它

换一下binlog2sql版本或者更换其他闪回工具

其他信息

暂无,忘了截图了

@czxin788
Copy link
Contributor

我觉得换成my2sql应该可以,性能比binlog2sql还快
https://github.com/liuhr/my2sql

@jimsoft1000
Copy link

我觉得换成my2sql应该可以,性能比binlog2sql还快 https://github.com/liuhr/my2sql

生产,我也是用的my2sql

@peng19832
Copy link
Contributor Author

peng19832 commented Nov 11, 2021

我觉得换成my2sql应该可以,性能比binlog2sql还快 https://github.com/liuhr/my2sql

@hhyo 大佬
archery带的binlog2sql,我用过几次,不知道是不是版本太老了,都没成功。
我手工用最新的binlog2sql,倒是可以正常生成sql,发现字段的值是错位了的。

@hhyo
Copy link
Owner

hhyo commented Nov 19, 2021

错位应该表结构有过变更,尝试过很多的解析工具,都或多或少有些限制,当前大家用的多的有哪些?

@peng19832
Copy link
Contributor Author

错位应该表结构有过变更,尝试过很多的解析工具,都或多或少有些限制,当前大家用的多的有哪些?

我试了下,楼上大佬提到的my2sql是可以正常生成的。
还有美团的myflash,也可以正常用,但是这个最终生成的还是二进制格式,不是sql脚本:
https://github.com/Meituan-Dianping/MyFlash

@AgsTing
Copy link

AgsTing commented Dec 1, 2021

生成的反向sql只有20行,设置的解析范围设置不生效
Uploading 微信图片_20211201183822.png…

@nick2wang
Copy link
Collaborator

同楼上几位,我也在用my2sql,主要是支持多线程解析速度比binlog2sql快10倍左右,目前已经集成到公司生产Archery中
Dingtalk_20211202134304

这是我测试了几款闪回工具的到的解析速度对比

  my2sql binlog2sql MyFlash mysqlbinlog
1.1G binlog回滚解析 1分50秒 19分钟 33秒 31秒

@czxin788
Copy link
Contributor

czxin788 commented Dec 2, 2021

同楼上几位,我也在用my2sql,主要是支持多线程解析速度比binlog2sql快10倍左右,目前已经集成到公司生产Archery中 Dingtalk_20211202134304

这是我测试了几款闪回工具的到的解析速度对比

  my2sql binlog2sql MyFlash mysqlbinlog
1.1G binlog回滚解析 1分50秒 19分钟 33秒 31秒

你做的这个真棒,跪求大佬开源

@peng19832
Copy link
Contributor Author

同楼上几位,我也在用my2sql,主要是支持多线程解析速度比binlog2sql快10倍左右,目前已经集成到公司生产Archery中 Dingtalk_20211202134304

这是我测试了几款闪回工具的到的解析速度对比

  my2sql binlog2sql MyFlash mysqlbinlog
1.1G binlog回滚解析 1分50秒 19分钟 33秒 31秒

厉害,可惜我是python小白,也想把my2sql集成上去

@czxin788
Copy link
Contributor

为什么go比python快这么多。
究竟是学go好,还是python好

@peng19832
Copy link
Contributor Author

为什么go比python快这么多。 究竟是学go好,还是python好

不太懂代码,据说是go天生支持多线程,讲究性能
python主打数据分析,还有脚本语言,开发方便

@czxin788
Copy link
Contributor

czxin788 commented Dec 21, 2021

python就不能像go一样快吗。
非得让我一边学python时,一边骂python慢

@nick2wang
Copy link
Collaborator

错位应该表结构有过变更,尝试过很多的解析工具,都或多或少有些限制,当前大家用的多的有哪些?

我对比了主流的几款闪回工具,MyFlash很快接近原生mysqlbinlog,缺点是不能生成直观可读的sql,而且非常吃内存,不支持mysql 8;binlog2sql不错,但是太慢了,在生产环境的大数据量下显得心有余而力不足,而且同样对于mysql 8存在兼容性问题;my2sql算是最均衡的,实测解析速度能达到binlog2sql的5倍以上,建议可以先集成进archery与binlog2sql并存,多一个选择,如果需要的话我提一下pr

  my2sql binlog2sql MyFlash mysqlbinlog
1.1G binlog回滚解析 1分50秒 19分钟 33秒 31秒

@czxin788
Copy link
Contributor

需要,感谢大佬提PR

hhyo pushed a commit that referenced this issue Jan 5, 2022
* 新增my2sql工具插件模块
@hhyo hhyo closed this as completed Jan 23, 2022
@AgsTing
Copy link

AgsTing commented Jan 27, 2022

@peng19832 请问1.8.1版本为什么没有my2sql菜单
image

@AgsTing
Copy link

AgsTing commented Jan 27, 2022

@nick2wang 请问docker部署的1.8.1版本,该如何升级才能使用my2sql功能

@nick2wang
Copy link
Collaborator

@nick2wang 请问docker部署的1.8.1版本,该如何升级才能使用my2sql功能

可以等1.8.3正式版发布,或者自己动手更新下这些文件:https://github.com/hhyo/Archery/pull/1314/files

@huangwei2013
Copy link

我觉得换成my2sql应该可以,性能比binlog2sql还快 https://github.com/liuhr/my2sql

@hhyo 大佬 archery带的binlog2sql,我用过几次,不知道是不是版本太老了,都没成功。 我手工用最新的binlog2sql,倒是可以正常生成sql,发现字段的值是错位了的。

错位是因为依赖包版本,要改成:

PyMySQL==0.9.3
wheel==0.29.0
mysql-replication==0.19

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants