MySQL delivers a very fast, multithreaded, multi-user, and robust SQL (Structured Query Language) database server. It is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software. MySQL is one of the most popular database management systems in the world, successfully powering many applications. MySQL is typically used for managing the core (or transactional) data of applications, such as products or sales in an e-commerce shop, and is often complemented with other data systems, e.g., a data warehouse for analytics, a search engine for search, etc.

The traditional approach to syncing MySQL with complementary data stores is batch-based, where pipelines extract data from the MySQL database system and send it to downstream data stores. Change data capture (CDC) is a modern alternative to inefficient bulk imports. CDC extracts change events (INSERTs, UPDATEs, and DELETEs) in real-time from data stores, such as MySQL, and provides them to a data pipeline.

Getting Started

Connections come in two flavors: source and sink. Source connections read from an external system and write to a Decodable stream, while sink connections read from a stream and write to an external system. MySQL CDC connectors can only be used in the source role.

Configure As A Source

To create and configure a connector for MySQL CDC, sign in to the Decodable Web Console, navigate to the Connections tab, click on New Connection, and follow the steps below.

  1. The connector type will default to source, since that is the only option for MySQL CDC connectors.

  2. Specify the hostname to connect to your MySQL database. For example, mysql-server.

  3. Optionally specify the port number to use when connecting to the host. By default, the port number is 3306.

  4. Provide the name of the database for the connection.

  5. Specify the name of the database table for the connection.

  6. Provide the username of the database on whose behalf the connection is being made.

  7. Provide the database user's password.

There are multiple ways to implement change data capture (CDC) with MySQL. For more detailed information, see the MySQL Getting Started guide and related documentation.

Configure the MySQL CDC connector using the Decodable CLI

If you are using the Decodable CLI to create or edit a connection to a MySQL database server, then use the following table as a reference for what properties are required and supported.

hostnameRequiredThe hostname that defines the location of your MySQL database. For example, mysql-server.
portOptionalThe port number to use when connecting to the host. Defaults to 3306.
database-nameRequiredThe name of the database that you want to connect to.
table-nameRequiredThe name of the database table.
usernameRequiredThe name of the database user with sufficient permissions to connect to the database.
passwordRequiredThe password for the database user.


Connector namemysql-cdc
Delivery guaranteeexactly once