5 个版本
使用旧的 Rust 2015
0.1.5 | 2018年4月30日 |
---|---|
0.1.4 | 2018年4月14日 |
0.1.3 | 2017年12月13日 |
0.1.1 | 2017年11月20日 |
0.1.0 | 2017年10月17日 |
#6 in #binlog
61KB
1.5K SLoC
mysqlbinlog-rs
一个用 Rust 编写的 MySQL binlog 文件(行格式)解析器,第一个稳定版本是 0.1.4
今年年初我使用 Python3 构建了一个解析器。现在改为使用 Rust,以提高效率,并为 Python3 提供了绑定以方便使用。
场景
- 同步 MySQL 数据到 Redis、MongoDB、Kafka 等。
- 在修复错误时找出数据库数据行变更历史。
- 为开发者监控表的数据变化,例如,编写 PHP 控制器操作。
- ...
为 Rust 开发者提供示例
- 您可以在
examples
目录下查看文件。
为 Python 开发者提供示例
Usage:
python3 main.py --ignore=th%.%,an%.% -b /usr/local/var/mysql/mysql_binlog.000001
# Give argument --ignore with a db name, table name pattern to ignore the row events in that tables.
- 2017-12-13 减少了读取 binlog 文件的时间。释放 Vec[] 中未使用内容的内存。修复了 python 绑定的 dylib 加载路径。
- 2018-04-02 支持旋转事件和时间戳类型。
依赖项
~6MB
~111K SLoC