MariaDB and MySQL source
tap-mysql extracts relational tables with full-table, key-based incremental,
or binlog-based replication. MariaDB and MySQL share the connector but have
different support status.
Source |
Status |
Native transfer |
|---|---|---|
MariaDB |
Available |
FullSync to PostgreSQL or Snowflake; PartialSync to Snowflake |
MySQL |
Experimental |
FullSync to PostgreSQL or Snowflake; PartialSync to Snowflake |
Prerequisites
The runtime user needs SELECT on every replicated table and access to
INFORMATION_SCHEMA. LOG_BASED replication additionally requires
REPLICATION CLIENT and REPLICATION SLAVE.
Configure the source before selecting LOG_BASED:
[mysqld]
log_bin=mysql-binlog
binlog_format=ROW
binlog_row_image=FULL
Retain binlogs longer than the maximum expected outage. If PipelineWise’s saved position is purged, the affected tables require a resync.
Configuration
id: "orders"
name: "Orders MariaDB"
type: "tap-mysql"
owner: "data-platform@example.com"
db_conn:
host: "<HOST>"
port: 3306
user: "<USER>"
password: "{{ env_var['MARIADB_PASSWORD'] }}"
dbname: "orders"
engine: "mariadb"
use_gtid: true
target: "snowflake"
batch_size_rows: 20000
stream_buffer_size: 0
schemas:
- source_schema: "orders"
target_schema: "repl_orders"
tables:
- table_name: "payments"
replication_method: "LOG_BASED"
Setting |
Required |
Default |
Effect |
|---|---|---|---|
|
With GTID |
— |
Selects |
|
No |
|
Stores a GTID bookmark instead of a filename and position. |
|
No |
Primary host |
Offloads FastSync reads; LOG_BASED continues from the primary. |
|
No |
All visible schemas |
Limits discovery to a comma-separated schema list. |
|
No |
|
Controls rows written per FastSync export batch. |
|
No |
Connector defaults |
Sets session variables after connecting. |
|
No |
CPU count |
Controls concurrent FastSync table exports. |
Common tap settings are documented in YAML configuration. Generate the
full template with pipelinewise init.
Operational notes
binlog_row_imagemust remainFULL; sparse row images can omit values required to reconstruct a target row.The connector interprets
TINYINTas Boolean. Values outside0and1can fail when the target column is Boolean.After an initial FastSync, the next normal run continues from the captured binlog or GTID position.
Use Troubleshooting for missing-binlog and packet-size failures.