MySQL on Azure Database

Azure Database for MySQL offers a scalable and secure platform for hosting MySQL databases in the cloud. It handles routine administrative tasks like backups, patching, and high availability, allowing developers to focus on their applications. The service provides features such as automated backups, automatic scaling, and built-in security measures to protect data. Azure Database for MySQL integrates seamlessly with other Azure services, enabling developers to build comprehensive solutions. With Azure's global presence, users can deploy MySQL databases in multiple regions for improved performance and availability. MySQL on Azure Database is a popular choice for developers and businesses looking for a managed MySQL service with the flexibility and reliability of Microsoft Azure's cloud infrastructure.

Features

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

🔧 Setup Guide

An Azure Database for MySQL setup credentials are compatible with the generic MySQL setup. By setting up an ELT sync directly with the database, we are able to achieve fast and robust ELT with deep access to the raw data.

On directions on how to define the connector configuration, follow the MySQL connector's setup steps:

Setup Instructions

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 using SQL commands as

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 are 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?