• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

go-mysql-transfer: go-mysql-transfer是一款MySQL数据库实时增量同步工具 ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

go-mysql-transfer

开源软件地址:

https://gitee.com/wj596/go-mysql-transfer

开源软件介绍:

License

简介

go-mysql-transfer是一款MySQL数据库实时增量同步工具。

能够监听MySQL二进制日志(Binlog)的变动,将变更内容形成指定格式的消息,实时发送到接收端。从而在数据库和接收端之间形成一个高性能、低延迟的增量数据同步更新管道。

特性

1、简单,不依赖其它组件,一键部署

2、集成多种接收端,如:Redis、MongoDB、Elasticsearch、RocketMQ、Kafka、RabbitMQ、HTTP API等,无需编写客户端,开箱即用

3、内置丰富的数据解析、消息生成规则、模板语法

4、支持Lua脚本扩展,可处理复杂逻辑

5、集成Prometheus客户端,支持监控告警

6、集成Web Admin监控页面

7、支持高可用集群部署

8、数据同步失败重试

9、支持全量数据初始化

原理

1、将自己伪装为MySQL的Slave监听binlog,获取binlog的变更数据

2、根据规则或者lua脚本解析数据,生成指定格式的消息

3、将生成的消息批量发送给接收端

与同类工具比较

特色 Canal mysql_stream go-mysql-transfer
开发语言 Java Python Golang
高可用 支持 支持 支持
接收端 编码定制 Kafka等(MQ) Redis、MongoDB、Elasticsearch、RabbitMQ、Kafka、RocketMQ、HTTP API
后续支持更多
全量数据初始化 不支持 支持 支持
数据格式 编码定制 Json(固定格式) Json(规则配置)
模板语法
Lua脚本

安装包

二进制安装包

直接下载安装包: 点击下载

源码编译

1、依赖Golang 1.14 及以上版本

2、设置' GO111MODULE=on '

3、拉取源码 ' git clone https://github.com/wj596/go-mysql-transfer.git '

4、进入目录,执行 ' go build '编译

全量数据初始化

go-mysql-transfer -stock

运行

开启MySQL的binlog

#Linux在my.cnf文件#Windows在my.ini文件log-bin=mysql-bin # 开启 binlogbinlog-format=ROW # 选择 ROW 模式server_id=1 # 配置 MySQL replaction 需要定义,不要和 go-mysql-transfer 的 slave_id 重复

命令行运行

1、修改app.yml

2、Windows直接运行 go-mysql-transfer.exe

3、Linux执行 nohup go-mysql-transfer &

使用说明

感谢

更新日志

v1.0.0 bate

  • 9.17 初始化提交bate版本

v1.0.1 release

  • 9.22 release

v1.0.2 release

  • 添加dbOps(数据库操作)、httpOps(http操作)两个Lua模块
  • 修复enum类型字段出现的乱码问题
  • redis接收端增加Sorted Set数据类型支持
  • 修复了近来反馈的bug

v1.0.3 release

  • 添加了Web Admin监控界面
  • 改进了全量数据同步的速度
  • 重构了失败重试机制
  • 功能优化,如:针对MongoDB添加UPSERT操作、针对消息队列添加了update原始数据保留,等等

v1.0.4 release

  • 修复了 -position 命令,binlog 名称验证问题

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap