Skip to main content
MySQL · binlog CDC

Replicate MySQL to your cloud warehouse.

Describe the sync in plain English, approve it once, and rsync.ai streams every INSERT, UPDATE, and DELETE from MySQL into BigQuery, Databricks, or Postgres — read straight from the binary log, with no polling and every delete captured as an event.

Real-time binlog CDCYou approve every syncNo per-row pricing
Reads the MySQL binlog — no polling You approve before anything moves
Destinations

Send MySQL data where your team already works.

Pick where it lands. rsync.ai maps MySQL types automatically and builds the pipeline — you approve the plan before anything moves.

Cloud warehouse

Land typed, query-ready tables for BI and analytics — incremental after the first snapshot.

BigQueryDatabricksSnowflakeRedshift

Another database

Replicate MySQL into Postgres — or into a fresh MySQL for a migration — with automatic type mapping and real-time CDC.

PostgreSQLMySQL

Storage, lake & sheets

Write Parquet, JSON, or CSV to object storage for your lake, or push query results to a live spreadsheet.

Amazon S3GCSAzure BlobGoogle Sheets
What syncs

Every MySQL object, mapped to typed columns.

Tables
Views
Primary keys
Binlog CDC · ROW
Snapshot + incremental
TINYINT(1) → BOOLEAN
DATETIME → TIMESTAMP
ENUM → TEXT
How it works

Four steps. Nothing runs until you approve.

01

Describe it

Name the tables to replicate in plain English — no SQL, no binlog wrangling, no connector config.

02

Review the plan

rsync.ai discovers the schema, maps MySQL types to the destination, and scans columns for likely personal data before a row moves.

03

Approve

Nothing runs until you say yes. Later schema changes are applied and recorded; only a dropped table waits for you.

04

Stream

rsync.ai reads the binary log and keeps the destination up to date continuously; a failed run resumes from its last binlog position.

After it lands

Then work with the data without leaving rsync.ai

Synced tables become something you can query, schedule and share in the same workspace.

SQL Explorer

Run SQL against your connections, with personal columns masked in previews; writes are gated by role and every write is audited.

SQL Explorer docs→

Models

Turn a query into a table that rebuilds on a schedule or when its inputs refresh, with version history and data checks.

Models docs→

Charts and Dashboards

Draw a model or saved query as a chart, then put charts on one live dashboard.

Charts→ · Dashboards→

Workflows and Ask rsync.ai

Schedule reports and data alerts to Slack or email. Describe one in plain English and Ask rsync.ai drafts it.

Scheduled reports→ · Ask rsync.ai→

Compare

Why teams move MySQL this way.

What you care aboutmysqldump / cronDebezium + KafkaPer-row ETLrsync.ai
Set up without an engineerNoNoRarelyPlain English
Real-time binlog CDCBatch dumpsYesVariesYes
Types mapped automaticallyBy handYou build itSometimesAutomatic
You approve before it runsn/aNoNoYes
Cost as volume growsYour timeInfra + opsRises per rowPer GB, not per row

Straight about status: the MySQL source and its Postgres, BigQuery, Databricks, storage, and Google Sheets destinations are live in production. Snowflake and Redshift are in preview. Self-hosting in your own VPC is available now — source-available under the rsync.ai Source-Available License — or run rsync.ai as a managed cloud.

FAQ

MySQL replication — common questions

How fresh is the data?
You choose the schedule, from a few times a day down to near real time. rsync.ai reads MySQL's binary log (binlog CDC) in ROW format, so it captures every INSERT, UPDATE, and DELETE — including the deletes that polling misses — and writes only the rows that changed. A failed run resumes from its last committed binlog position instead of starting over.
Does MySQL CDC work on Amazon RDS, Aurora, Cloud SQL, and Azure Database for MySQL?
Yes. On RDS and Aurora, enable automated backups and set binlog_format=ROW and binlog_row_image=FULL in the parameter group. On Google Cloud SQL, enable point-in-time recovery (which turns on binary logging) and set binlog retention. On Azure Database for MySQL, set binlog_row_image=FULL and binlog_expire_logs_seconds; some Basic tiers pin binlog_row_image to MINIMAL and cannot run CDC. Both GTID and file+position replication are supported.
What do I need to set up on MySQL?
Binary logging in ROW format with binlog_row_image=FULL, and a user with REPLICATION SLAVE and REPLICATION CLIENT. Tables replicated into PostgreSQL or MySQL need a primary key. rsync.ai's pre-flight check flags anything missing.
Should I use GTID or file+position replication?
Use GTID if gtid_mode=ON on your server (MySQL 5.7+). GTID gives each transaction a globally unique identifier, so rsync.ai resumes from an exact transaction boundary after a failover or primary switchover — no manual position bookkeeping. File+position works fine for single-primary setups but requires recording the exact binlog file and offset at snapshot time. rsync.ai supports both; GTID is the recommended default.
Do I need to write SQL or configure a connector?
No. Describe the sync in plain English. rsync.ai discovers the schema, maps MySQL types to the destination — TINYINT(1)→BOOLEAN, ENUM→TEXT, UNSIGNED INT→BIGINT, and more — scans columns for likely personal data, and shows you the plan. Nothing runs until you approve it, and you can mask or hash sensitive columns (SHA-256) before they reach the destination.
How are you priced?
On data volume (GB moved), not per row or Monthly Active Rows. Each plan includes a monthly GB allowance (10 GB on the free month), and pipelines pause at your cap instead of running up charges.
Who controls what moves?
You do. No pipeline is created or started until you confirm the plan, PII rules apply before data lands, and later schema changes are applied and recorded (only a dropped table waits for a person). Self-hosting entirely in your own VPC is available now for teams that need data to never leave their network.

Put your MySQL data in the warehouse.

Connect your database free and send your first live sync to BigQuery or Databricks today.

Live on rsync.ai Cloud today · self-hosted (rsync.ai Source-Available License)