All Projects → healerkx → mysqlbinlog-rs

healerkx / mysqlbinlog-rs

Licence: MIT license
A MySQL binlog file (row format) parser in Rust

Programming Languages

rust
11053 projects
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to mysqlbinlog-rs

replicator
MySQL Replicator. Replicates MySQL tables to Kafka and HBase, keeping the data changes history in HBase.
Stars: ✭ 41 (+105%)
Mutual labels:  binlog
Binlog2sql
Parse MySQL binlog to SQL you want
Stars: ✭ 2,535 (+12575%)
Mutual labels:  binlog
wing-binlog
php mysqlbinlog monitoring system
Stars: ✭ 37 (+85%)
Mutual labels:  binlog
horgh-replicator
Golang binlog replication from MySQL to MySQL, PostgreSQL, Vertica, Clickhouse
Stars: ✭ 46 (+130%)
Mutual labels:  binlog
MySqlCdc
MySQL/MariaDB binlog replication client for .NET
Stars: ✭ 71 (+255%)
Mutual labels:  binlog
laravel-binlog
Add mysql binlog event listening for Laravel ( 为Laravel框架添加Mysql Binlog事件监听 )
Stars: ✭ 19 (-5%)
Mutual labels:  binlog
go-mysql-mongodb
Sync MySQL data into MongoDB
Stars: ✭ 33 (+65%)
Mutual labels:  binlog
MysqlToAll
A Mysql data to file/elasticsearch/kafka/redis/redis-cluster/mongodb(audit and normal)/TiDB/postgresql with binlog tool.
Stars: ✭ 84 (+320%)
Mutual labels:  binlog
asyncmy
A fast asyncio MySQL/MariaDB driver with replication protocol support
Stars: ✭ 126 (+530%)
Mutual labels:  binlog
kunlun-storage
Kunlun-storage is the storage component for KunlunBase. It's developed based on percona-mysql-8.0.x and contains exclusive features used by KunlunBase, performance enhancements and XA transaction crash safety enhancements without which MySQL would not be able to execute XA transactions reliably under error conditions such as power outage, proces…
Stars: ✭ 2 (-90%)
Mutual labels:  binlog

mysqlbinlog-rs

A MySQL binlog file (row format) parser in Rust The first stable version is 0.1.4

I built a parser in Python3 in the early of this year. Now in Rust instead, for high efficiency, and provided a Python3 binding for conveniency.

Scenarios

  • Sync MySQL data into Redis, MongoDB, Kafka, e.g.
  • Figure out the DB data row change history when fixing bugs
  • Watch table's data changing for developer, for example, coding a PHP controller-action.
  • ...

Examples for Rust developers

  • You can see files in the dir examples

Examples for Python developers

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 Reduce times of reading binlog file. Release the content memory in Vec[] for unused content. Fix python binding's dylib loading path.
  • 2018-04-02 Support Rotate event and timestamp type.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].