Skip to main content

Add the MySQL Connector

Authenticate to MySQL

After you add the connector, you need to set the required properties.
  • Server: Enter the host name or IP address of the server that hosts the MySQL database. To connect to the database from the same machine, enter localhost as the value for Server.
  • Port: Enter the port number of the server that hosts the MySQL database. The default port value is 3306.
supports authenticating to in several ways. Select your authentication method below to proceed to the relevant section that contains the authentication details.

Password

NTLM

To connect with your NTLM user credentials, specify the following properties:
  • Auth Scheme: Select NTLM.
  • Domain: Enter the domain name for a Microsoft Windows (NTLM) security login.
  • NTLM Version: Select your NTLM version. The default version is 1.

Azure Active Directory

To connect with your Azure Active Directory credentials, specify the following properties:
  • Auth Scheme: Select AzureAD.
  • User: Enter the username that you use to authenticate to your MySQL account.
  • Azure Tenant: Enter the Microsoft Online tenant to which you want to connect. If you do not specify a tenant, uses the default tenant.
  • OAuth Client Id: Enter the client Id that you were assigned when you registered your application with an OAuth authorization server.
  • OAuth Client Secret: Enter the client secret that you were assigned when you registered your application with an OAuth authorization server.

AzurePassword

Azure Managed Service Identity

To connect with your Azure Managed Service Identity credentials, specify the following properties:
  • Auth Scheme: Select AzureMSI.
  • Azure Tenant: Enter the directory (tenant) Id. This Id is available on the Overview page of the OAuth application that you use to authenticate to MySQL on Azure.

AWS IAM Roles

To connect with your IAM user credentials, specify the following properties:
  • Auth Scheme: Select AwsIAMRoles.
  • AWS Access Key: Enter your Amazon Web Services (AWS) account access key. This value is available on you AWS security-credentials page.
  • AWS Secret: Enter your Amazon Web Services (AWS) account secret. This value is available on you AWS security-credentials page.
  • AWS Role Arn: Enter the Amazon Resource Name of the role that you want to use when you authenticate.

AWS EC2 Roles

LDAP

To connect with LDAP credentials, specify the following properties:
  • Auth Scheme: Select LDAP.
  • User: Enter the username that you use to authenticate to your MySQL account.
  • Password: Enter the password that you use to authenticate to your MySQL account.

Complete Your Connection

To complete your connection:
  1. Specify these properties:
    • (Optional) Database: Enter the default database to which you want to connect when you connect to the MySQL server.
    • (Optional) Use SSL: Select whether you want to enable Secure Sockets Layer (SSL). By default, the Enable checkbox is not selected.
  2. Define advanced connection settings on the Advanced tab. (In most cases, though, you should not need these settings.)
  3. Click Connect to to connect to your account.
  4. Click Create & Test to create your connection.

Enable Binary Logging (for Change Data Capture)

Change data capture (CDC) is enabled automatically for the MySQL database. However, you must enable binary logging for MySQL replication. Binary logs record transaction updates so replication tools can generate changes. You need the following prerequisites in order to enable binary logging:
  • a MySQL server
  • the appropriate MySQL user privileges

Enable Binary Logging

  1. Determine whether binary logging is enabled by submitting the following statement from a MySQL prompt:
    SHOW VARIABLES LIKE 'log_bin';
    
    If the option is not enabled (that is, your receive an OFF message), configure the following options in the MySQL Server configuration file:
    server-id         = 223344
    log_bin           = mysql-bin
    binlog_format     = ROW
    binlog_row_image  = FULL
    expire_logs_days  = 10
    
    Descriptions of these options are available in MySQL binlog Configuration Properties.
  2. Verify that binary logging is enabled by resubmitting this statement:
    SHOW VARIABLES LIKE 'log_bin';
    

MySQL Binary-Logging Configuration Properties

This section describes the values for options that are used earlier in step 1:
  • server-id: This value is a unique Id for each server and each replication client in the MySQL cluster.
  • log_bin: The value for this option is the base name of the sequence of binlog files.
  • binlog_format: The format value for this option is must be set either to ROW or row.
  • binlog_row_image: The value for this option must be set to FULL or full.
  • expire_logs_days: This value is the number of days before the binlog file is removed automatically. The default value is 0, which means that there is no automatic removal. Set the value to match the needs of your environment.

Enable MySQL as a Reverse ETL Source

To use MySQL as a reverse ETL source in , the connected user account must have appropriate permissions to perform the following tasks:
  • create a database and schema
  • access, modify, or delete tables within that schema
These privileges are required so that can maintain a snapshot of changes during reverse ETL operations. You can grant the necessary permissions by executing one of the following sets of SQL commands in MySQL.

Option 1: Grant Full Access to All Schema Operations

-- Grant permission to create databases.
GRANT CREATE ON *.* TO 'Username'@'Host';

-- Grant full access to the specific schema.
GRANT ALL PRIVILEGES ON `cdata_sync_delta_snapshot`.* TO 'Username'@'Host';

-- Apply changes if the MySQL version is earlier than 9.2.0.
FLUSH PRIVILEGES;

Option 2: Grant Only the Specific, Required Privileges

-- Grant permission to create databases.
GRANT CREATE ON *.* TO 'Username'@'Host';

-- Grant only the specific privileges that are required by {siteNameShort}.
GRANT SELECT, CREATE, INSERT, ALTER, DELETE, DROP, INDEX ON `cdata_sync_delta_snapshot`.* TO 'Username'@'Host';

-- Apply changes if the MySQL version is earlier than 9.2.0.
FLUSH PRIVILEGES;

More Information