MySQL

MySQL is a popular open-source relational database management system (RDBMS) that offers a robust and scalable solution for storing, managing, and retrieving data.

It is widely recognized for its performance, ease of use, and extensive community support.

MySQL follows the relational database model, allowing users to define relationships between tables and enforce data integrity through constraints. It supports a wide range of data types, indexing mechanisms, and SQL queries, making it versatile for various applications.

MySQL offers features such as transactions with ACID properties, replication for high availability and scalability, and comprehensive security options for data protection. It integrates seamlessly with popular programming languages and frameworks, enabling developers to build efficient and data-driven applications.

It is employed by organizations of all sizes, from small businesses to large enterprises, and its user-friendly interface and extensive documentation make it accessible to both beginners and experienced developers.

A few of our integrations are built on MySQL databases:

Features

Feature nameSupported
Column HashingTrueColumn level
BlockingTrueColumn level
IncrementalTrueMerge, Append
Custom dataTrue
HistoryFalse
ReSyncTrueTable level
TemplatesFalse

πŸ”§ Setup Guide

Step 1 - Get credentials to setup the connection

From your MySQL Database, access and paste the required fields:

  • Name (The name you want to refer to regarding this connection in the Weld app)
  • Host (IP Address of your server)
  • Database (Name of the database you want to connect to)

The host can be found running the following SQL commands in your MySQL database:

select @@hostname;
show variables where Variable_name like '%host%';

Furthermore, add the port, name and your Weld username and password if desired. You can also connect through an SSH Tunnel.

Step 2 - Data To Sync

  1. Select the tables you wish to include in the sync.
    You can view the schema, remove columns or hash sensitive information.
  2. Update Sync mode:
    By default the MySQL connector is set to run always full syncs. To optimize the sync time and reduce processing overhead on your MySQL server we recommend for you to set up the syncs to run incrementally.

We currently support both Merge and Append mode for incremental syncs.

Merge

To have your table running incrementally using the merge configuration you need a table primary key and a cursor timestamp (updated_at is preferred).

When a sync is run, Weld will select only the new or changed rows since the last update.

Append

If a row updated_at timestamp is not available on the table then another option is to run an incremental sync using append mode. Append mode uses cursor to keep track of how far the sync got on the last run. It will use that cursor to append new entries at the end of the table on the next run.

Append is not widely used as it does not capture updates in the previous rows.

Full Sync at Midnight

A limitation of both Merge and Append modes is that they do not capture deleted rows. If you expect rows to be deleted often from your tables then you can set a table to run a full sync at midnight which will remove those deleted rows.

Step 3 - Configure Sync

  1. Select how often you would like the data to sync.
  2. Provide a unique destination table name.

Weld will take over from here and commence syncing data from your MySQL database.

Was this page helpful?