关于mysqles数据同步,mysql同步到es的几种方法这个很多人还不知道,今天小乐来为大家解答以上的问题,现在让我们一起来看看吧!

mysqles数据同步(mysql同步到es的几种方法)mysqles数据同步(mysql同步到es的几种方法)


mysqles数据同步(mysql同步到es的几种方法)


mysqles数据同步(mysql同步到es的几种方法)


1、因为自己项目中需要用到mysql数据同步到es中,查找了相关资料决定用c来做,所以便有了本文,下面一起来看如何使用c吧根据 上的原理解释,我们知道 c 会模拟 mysql sle 的交互协议,伪装自己为 mysql sle,然后向 mysql 发送 dump 协议。

2、mysql 收到 dump 请求,开始推送 binary log 给 sle(也就是 c),然后 c 解析 binary log 对象(原始为 byte流)。

3、经 c 解析过的对象,我们使用起来就非常的方便了。

4、再根据 提供的版本信息,你会发现 c 其实相当于一个中间件,专门用来解析 MySQL 的 binlog 日志。

5、c 解析好了之后,会封装成一个数据对象,通过 protobuf3.0 协议进行交互,让 c 客户端进行消费。

6、根据上面的解释,以及 c 提供的版本信息,我们在使用 c 的时候,要安装一个 c.deployer-1.1.4.tar.gz 进行解析 MySQL 的 binlog 日志。

7、下载后, c.deployer-1.1.4.tar.gz 到 MySQL 主机上,比如放在 /usr/local/soft/目录下。

8、然后依次执行下面的命令:然后修改 c 的配置文件 vim conf/example/instance.properties这三项改成你自己的,比如我的配置如下:然后保存并退出。

9、(VI 模式下,按 Esc 输入 :wq 回车退出。

10、)接着,我们检查一下 MySQL 的配置。

11、确定版本和是否开启了 binlog 日志,以及日志格式。

12、c 支持 binlog 格式为 ROW 的模式。

13、如果你没开启 binlog,并且格式是非 row 的,建议修改一下 mysql 的配置文件。

本文到这结束,希望上面文章对大家有所帮助。