Skip to main content

Overview

MySQL is one of the world’s most popular open-source relational database management systems. Datazone provides seamless integration with MySQL databases, allowing you to easily ingest and manage your MySQL data.

Connection Parameters

Set on the source when you create it. Names match the API and CLI payload.
string
required
Name β€” a unique identifier for your MySQL source.
string
required
Host β€” hostname or IP address of your MySQL server.
string
required
Port β€” port the MySQL server listens on. Typically 3306.
string
required
Database Name β€” the database to connect to.
string
Schema Name β€” optional schema, if different from the database name. Left empty, extracts resolve tables within database_name.
string
required
User β€” username with read permission on the tables you intend to extract.
string
required
Password β€” password for the specified user. Stored encrypted.

Extract Parameters

Set per extract, in source_parameters. See Shared Extract Parameters for mode, replication_key, and schema_mapping.
string
required
Table Name β€” the table or view to extract. Resolved within the source’s schema_name when set, otherwise database_name.
integer
default:"1000000"
Rows fetched and written per batch.
string
default:"*"
Columns to read, as a comma-separated list.
string
Row filter pushed down to MySQL, written without the WHERE keyword β€” for example created_at >= '2024-01-01'.

Required Permissions

The MySQL user account needs the following permissions:
  • SELECT - For reading data from tables
  • SHOW DATABASES - For listing available databases
  • SHOW VIEW - For accessing views
  • REFERENCES - For foreign key constraints

Limitations

Be aware of the following limitations when working with MySQL sources:
  • Supported MySQL versions: 5.6 and above
  • Some MySQL-specific data types might be converted to standard types
  • Large table scans may impact source database performance
  • Consider using read replicas for heavy data extraction

Next Steps

After configuring your MySQL source:
  1. Create extracts to specify which tables to ingest
  2. Configure scheduling for recurring extracts
  3. Integrate the source into your data pipelines
For more information about working with extracts and pipelines, refer to their respective documentation sections.