有没有工具可用于以行格式解析mysql binlog文件并创建json

时间:2017-08-24 10:40:50

标签: mysql database-replication mysqlbinlog

我以行格式启用了mysql binlog。 我正在使用mysqlbinlog来解析binlog文件。 我正在使用这个命令:

 mysqlbinlog --base64-output=decode-rows -vv ./mysql-bin.000004

此命令返回我必须解析的sql语句以生成json。

我在python中使用了pymysqlreplication模块,但是它没有从binlog文件中读取。它需要实时的mysql复制连接。我无法使用主服务器访问存档的binlog文件。

有没有办法解析存档的binlog文件并生成json?

2 个答案:

答案 0 :(得分:1)

您可以使用binlog-parser

  

用于将MySQL binlog文件解析为JSON的工具。读取binlog输入文件,在数据库中查询字段名称,将JSON写入stdout。

答案 1 :(得分:0)

您可以使用

https://github.com/noplay/python-mysql-replication

一些独立项目如其页面所述使用此方法。

我已经基于sqlparse(python)创建了一个单独的binlog解析器。链接:

https://github.com/monothorn/mysql-parser