# julien-duponchelle/python-mysql-replication

Pure Python Implementation of MySQL replication protocol build on top of PyMYSQL

Repository: https://github.com/julien-duponchelle/python-mysql-replication
Canonical: https://ross.abutalabs.com/products/python-mysql-replication
Language: Python
License Family: other
Topics: mysql, python, mysql-replication-protocol, mysql-binlog, hacktoberfest
Last push: 2026-08-06T00:37:24+00:00

## Health v2 (maintenance only)
Score: 93/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 96, release rhythm 84, longevity 100
- inputs: {"age_days": 5100, "days_push": 28, "days_rel": 28, "gap_med": 89.0, "n_releases_24m": 3}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2414, forks 690 (observed 2026-08-28T04:06:44.555289+00:00)

## What it is
A pure Python library implementing the MySQL replication protocol on top of PyMySQL, letting applications stream binlog events such as inserts, updates, deletes, and raw queries. It enables change data capture from MySQL or MariaDB servers.

## Use cases
- replicate MySQL data to NoSQL databases or search engines
- invalidate caches when database rows change
- stream MySQL binlog events in real time
- build a change data capture pipeline from MySQL
- audit database changes
- perform real-time analytics on database changes

## When to choose
- you need to consume MySQL binlog events from Python without external tools
- you want CDC for cache invalidation, auditing, or syncing to another datastore
- you need support for MySQL 8.0 and MariaDB with pure Python

## When to avoid
- you need a production-grade CDC tool with guaranteed delivery and schema management
- your MySQL version is older than 8.0.14 and you need full row metadata
- you are not working in Python

## Facets
- artifact type: library
- maturity: active
- function: database-driver, streaming, etl
- domain: databases
- platform: python, cross-platform
- tags: mysql, binlog, change-data-capture, replication-protocol, pymysql, cdc, data-engineering, real-time

## Member repositories
- julien-duponchelle/python-mysql-replication (main) score 93

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:44.555289+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:33:12.555320+00:00, confidence not recorded.
  - readme: https://github.com/julien-duponchelle/python-mysql-replication (fetched 2026-08-28T04:06:44.555289+00:00, sha 315107d4c626)
- Data as of 2026-08-30T08:39:29.467469+00:00.
