MySQL (public preview)

What is MySQL?

MySQL is a widely-used open-source relational database management system known for its reliability, performance, and ease of use. It supports a variety of applications, from small-scale projects to large-scale enterprise systems, offering flexibility and robust data management capabilities.

Why Connect MySQL to Monte Carlo?

Integrating Monte Carlo with MySQL allows you to monitor your data assets through custom SQL monitors, which can be created in either the UI wizard and/or programmatically via monitors as code (API/SDK too). These monitors can be used to generate notifications (incidents) to relevant stakeholders and circuit break pipelines.

Connect using SSL

Currently, SSL configuration is only supported via the command-line interface (CLI).

You can find all available options for configuring a MySQL connection in the CLI documentation for the add-mysql command.

Examples of SSL Authentication:

  • Server Authentication. To verify the identity of the MySQL server, use the following command add-mysql specifying the CA certificate (--ssl-ca). The CA certificate ensures that the server's identity is verified.
  • Client Authentication. To verify the identity of the client, use the following command add-mysql specifying the CA certificate (--ssl-ca), client certificate (--ssl-cert) and the private key (--ssl-key).
    • The client certificate and private key are used to authenticate the client to the server.
    • If the private key is password-protected, you must also specify the key's password (--ssl-key-password).

Monitor & Lineage Support

Below are the monitors & lineage for the MySQL Integration today. Please reach out to your Monte Carlo representative if you have requirements for additional monitors.

CategoryMonitor / Lineage CapabilitiesSupport
Table MonitorFreshness
Table MonitorVolume
Table MonitorSchema Changes
Metric MonitorMetric
Validation MonitorSQL Custom
Validation MonitorComparison
Validation MonitorValidation
Job MonitorQuery performance
LineageLineage

Connecting to MySQL

Now that we know the value connecting MySQL to Monte Carlo can bring, here are the necessary steps to set up the integration.

📘

Prerequisites

To create a service account, you will need admin credentials to your MySQL database.

This guide explains how to create a read-only service account for Monte Carlo in your MySQL database.

To review all steps necessary to integrate your SQL database with Monte Carlo, please see here.

Create a read-only service account

Please run the SQL snippet below on your MySQL database to create a read-only service account for Monte Carlo

CREATE USER 'montecarlo' IDENTIFIED BY '<PASSWORD>';

/* 
Grant access to all tables and views. Repeat for all relevant schemas (databases).
Select permissions are necessary to create custom SQL monitors. 
*/
GRANT SELECT, SHOW VIEW ON <SCHEMA>.* TO 'montecarlo';

FLUSH PRIVILEGES;

FAQs

What is the minimum supported version?

Monte Carlo supports MySQL 8.0 and newer.

Are cloud variants of MySQL like AWS RDS, GCP Cloud SQL, and Azure Database supported?

Yes, AWS RDS, GCP Cloud SQL, and Azure Database for MySQL are all supported.

What hosting solutions are supported?

This integration supports any instance that is reachable from one of our hosting options. Please see the networking docs for more detail.