Skip to main content

Prerequisites

  • If your MySQL database is protected by security groups or other firewall settings, you will need to have the data-syncing service’s static IP available to complete Step 1.

Step 1: Allow access

Create a rule in a security group or firewall settings to whitelist:
  • incoming connections to your host and port (usually 3306) from the static IP.
  • outgoing connections from ports 1024 to 65535 to the static IP.
Connecting through a bastion hostIf your database is not publicly accessible, SSH tunneling through a bastion host is supported instead. Allow inbound SSH (port 22) from the data-syncing service’s egress IP on the bastion host, add the service’s public key to ~/.ssh/authorized_keys, and grant the bastion host’s IP access to the database port. You will provide the bastion address, port, and username when configuring the destination.

Step 2: Create writer user

Create a database user to perform the writing of the source data.
  1. Open a connection to your MySQL database.
  2. Create a user for the data transfer by executing the following SQL command.
Avoid special characters in credentialsAvoid using the following characters in the username or password: @, [, ], /, ?, #, ", \, +, space, &, :, %
  1. Grant user required privileges on the database.
If the schema/database already existsBy default, the service creates a new schema (in MySQL, schema is synonomous with database). If you prefer to create the schema yourself before connecting the destination, you must ensure that the writer user has the proper permissions on the schema, using GRANT ALL PRIVILEGES ON <database_name>.* TO <username>@'%';

Step 3: Add your destination

Securely share your host name, database name, port, your chosen schema name, username, and password with us to complete the connection.