Side by side
Canal vs TiCDC
Both stand on change data capture software. Which one you can start free with, which one lets you read the code, and what each costs once you pay.
Free plan APILinuxMac+1
Canal provides a self-hosted route for parsing MySQL binlogs and routing changes to supported message systems. Check the source-version requirements and Docker instance limit against your deployment needs.
Visit Canal Free plan Open source APILinuxMac+1
TiCDC provides incremental TiDB replication with filtering, multiple sink types, and cluster-to-cluster options. Plan for its at-least-once delivery behavior, table index requirements, and documented unsupported cases before relying on a replication path.
Visit TiCDCThe facts
| Canal | TiCDC | |
|---|---|---|
| Free plan | Yes | Yes |
| Open source | Not published | Yes |
| Runs on | API, Linux, Mac, Self-hosted | API, Linux, Mac, Self-hosted |
| Lowest paid plan | Free or on request | Free or on request |
| Plans published | 1 | 1 |
| Maker | Not published | Not published |
| Website | github.com | docs.pingcap.com |
| On change data capture software | #3 of 23 | #1 of 23 |
Canal: what it does well
- Free project under the Apache-2.0 license.
- Supports listed MySQL source versions through 8.0.x.
- Delivers change records to Kafka and RocketMQ.
- Admin web UI manages configuration, tasks, and logs.
- Native Prometheus monitoring is listed.
What to know first
- Self-hosted deployment is required.
- Default Docker setup runs one Canal instance per Docker instance.
- Source-version list does not include MySQL 8.4.
TiCDC: what it does well
- Replicates to databases, Kafka, cloud storage, and NFS.
- Supports bidirectional TiDB cluster replication.
- Filters databases, tables, DMLs, and DDLs.
- Nodes can be added or removed dynamically.
What to know first
- At-least-once delivery can repeat statements or Kafka messages.
- Tables generally need a valid index.
- Large transactions have partial support and out-of-memory risk.
- RawKV-only clusters are unsupported.