At a glance
| Sources | MySQL, MariaDB, PostgreSQL, SQL Server, Oracle, Db2, MongoDB, Cassandra, CockroachDB; incubating Vitess, Spanner, Informix, YashanDB, Ingres, Milvus |
| Targets | Kafka topics (Kafka Connect); Debezium Server sinks incl. Kinesis, Pub/Sub, Pulsar, Event Hubs, Redis, NATS, Iceberg, JDBC; JDBC and MongoDB sink connectors |
| CDC mechanism | Log-based: binlog, logical decoding, redo logs (LogMiner, OpenLogReplicator or XStream), SQL Server CDC tables, change streams |
| Initial load | Initial snapshot, plus signal-driven incremental snapshots |
| Schema evolution | Schema changes recorded in a schema history topic for connectors that need it; events carry schemas |
| Latency | Not documented as a figure; events are streamed as changes are read from the log |
| Conflict handling | Not applicable: one-way capture; conflict resolution is left to the consumer or sink |
| Monitoring | JMX metrics for connectors; Debezium Platform UI to monitor pipelines on Kubernetes |
| Deployment | Kafka Connect, Debezium Server (standalone), embedded engine, Kubernetes Operator |
| Licensing | Apache 2.0, free; no commercial edition from the project |
Debezium is the default open source starting point for log-based CDC into Kafka, with mature connectors for MySQL, PostgreSQL, SQL Server, Oracle, Db2 and MongoDB. It costs nothing to license, but you design, run and monitor the pipeline yourself, so budget engineering time for Kafka Connect or Debezium Server, offsets and schema history.
Overview
Debezium captures inserts, updates and deletes committed to a database by reading its transaction log (for example the MySQL binlog, PostgreSQL logical decoding or Oracle redo logs through LogMiner) and turns each change into an event. The 3.7 documentation lists source connectors for MongoDB, MariaDB, MySQL, PostgreSQL, SQL Server, Oracle, Db2, Cassandra and CockroachDB, plus incubating connectors for Vitess, Spanner, Informix, YashanDB, Ingres and Milvus, and sink connectors for JDBC and MongoDB.
There are several ways to run it. The classic deployment is as source connectors in Kafka Connect, writing one topic per table. Debezium Server is a standalone Quarkus application that needs no Kafka and sends events to sinks such as Amazon Kinesis, Google Cloud Pub/Sub, Apache Pulsar, Azure Event Hubs, Redis, NATS, RabbitMQ, HTTP, JDBC or Apache Iceberg. The Debezium Engine embeds capture in your own Java application, and on Kubernetes the Debezium Operator and the Debezium Platform web front end manage pipelines.
Key features
- Log-based capture of row-level inserts, updates and deletes, with an initial snapshot and later incremental snapshots triggered by signals
- Source connectors for MySQL, MariaDB, PostgreSQL, SQL Server, Oracle, Db2, MongoDB, Cassandra and CockroachDB, plus incubating ones for Vitess, Spanner and others
- Oracle capture through LogMiner by default, or through OpenLogReplicator or Oracle XStream (which Debezium describes as a commercial component of Oracle GoldenGate)
- Debezium Server: a standalone runtime that streams to Kinesis, Pub/Sub, Pulsar, Event Hubs, Redis, NATS, RabbitMQ, Iceberg and other sinks without Kafka
- Embedded Debezium Engine for consuming changes inside a Java application
- Debezium Operator and Debezium Platform UI for declarative or visual pipelines on Kubernetes
- Single message transforms for routing, filtering and reshaping events, and JDBC and MongoDB sink connectors
Integrations and ecosystem
Pros and cons
Pros
- Free Apache 2.0 licence and vendor-neutral foundation governance
- Broad set of log-based connectors for the main relational databases and MongoDB
- Several runtimes: Kafka Connect, standalone Debezium Server or an embedded library
- Frequent releases, with 3.7 stable and 3.8 in development in November 2026
- Widely used as the base of commercial CDC services, so event formats are well known
Cons
- No vendor support from the project: you operate Kafka Connect or Debezium Server, offsets and schema history yourself
- Several connectors (Vitess, Spanner, Informix and others) are incubating and may change without backward compatibility
- One-way capture only: no built-in bidirectional sync or conflict resolution
- Oracle XStream capture depends on a commercial Oracle GoldenGate component
Pricing
Debezium is free open source software under the Apache 2.0 licence, with no paid edition from the project. You pay only for the infrastructure you run it on (Kafka and Kafka Connect, or a host for Debezium Server). Several vendors sell managed services or support built on Debezium connectors, for example Confluent Cloud's Debezium-based CDC source connectors; those are separate commercial products.
Pricing checked on the vendor's official page on 7 November 2026. Prices change; confirm before buying.
Who it is best for
Engineering teams that want free, log-based CDC from operational databases into Kafka or another event stream and are prepared to run the pipeline themselves.
Typical use cases
- Streaming database changes into Kafka to feed microservices (outbox pattern and event-driven architectures)
- Keeping a search index, cache or analytics store in sync with an OLTP database
- Loading change events into a lakehouse table format such as Apache Iceberg through Debezium Server
- Low-downtime database migrations by replaying changes after an initial snapshot
Who should look elsewhere
- Teams that want a managed service with a support contract and a UI for every step: consider Confluent CDC source connectors or Estuary.
- Two-way synchronisation between databases with conflict rules, where a tool such as SymmetricDS fits better.
Verdict
Debezium is the most widely adopted open source option for log-based CDC, with a broad connector list and several ways to run it. It is free, but it is a set of building blocks rather than a managed product, so teams without Kafka or streaming experience may prefer a managed service built on it or a commercial replication tool.
Frequently asked questions
Is Debezium free for commercial use?
Yes. Debezium is released under the Apache 2.0 licence, which allows commercial use. The project sells nothing; costs come from the infrastructure you run it on or from any vendor service you buy.
Do I need Kafka to use Debezium?
No. Kafka Connect is the classic deployment, but Debezium Server streams changes to systems such as Kinesis, Pub/Sub, Pulsar, Event Hubs, Redis or NATS without Kafka, and the Debezium Engine embeds capture in a Java application.
Who owns Debezium now?
Debezium is hosted by the Commonhaus Foundation. The project asked to join in November 2024; Red Hat donated the Debezium trademark and domains, and contributors keep their copyright.
How does Debezium capture changes from Oracle?
By default through Oracle LogMiner. The connector can also use OpenLogReplicator, an open source redo log reader, or Oracle XStream, which Debezium's documentation describes as a commercial component of Oracle GoldenGate.
Sources
- Debezium home page
- Debezium releases
- Debezium connectors (3.7 documentation)
- Debezium architecture
- Debezium Server documentation
- Moving Debezium to the Commonhaus Foundation (blog, 4 November 2024)
- Debezium at Commonhaus FAQ
Checked November 2026.
Listed in: Change Data Capture & Replication.
How we research reviews and what star ratings mean: our editorial method.