在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:go-mysql-transfer开源软件地址:https://gitee.com/wj596/go-mysql-transfer开源软件介绍:简介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、将生成的消息批量发送给接收端 与同类工具比较
安装包二进制安装包 直接下载安装包: 点击下载 源码编译 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
v1.0.1 release
v1.0.2 release
v1.0.3 release
v1.0.4 release
|
请发表评论