MySQL is an open-source relational database management system (RDBMS).

Note: Metaplane supports MySQL hosted on-premise and/or in your cloud network.

Provisioning Access with Roles (v8.0+)

Create user

As a super user, execute the following SQL commands to create a group, a user assigned to that group, and permissions to access and monitor system tables.

Make sure to generate a secure password and store it securely — you'll save it into Metaplane later.

CREATE ROLE metaplane_role;
GRANT REFERENCES ON *.* TO metaplane_role;
GRANT USAGE ON *.* TO metaplane_role;
GRANT SELECT ON *.* TO metaplane_role;

CREATE USER metaplane_user IDENTIFIED BY 'password123';

GRANT metaplane_role to metaplane_user WITH ADMIN OPTION;
SET DEFAULT ROLE metaplane_role TO metaplane_user;

Granting permissions to tables in a schema

Then for each schema schema_name, execute the following three commands to grant read-only access:

-- Grant usage on schema and select on current and future child tables
GRANT USAGE ON schema_name.* TO metaplane_role;
GRANT SELECT ON schema_name.* TO metaplane_role;
GRANT ALL PRIVILEGES ON schema_name.* TO metaplane_role;

Provisioning Access without Roles (< v8.0)

CREATE USER metaplane_user IDENTIFIED BY 'password123';

GRANT REFERENCES ON *.* TO metaplane_user;
GRANT USAGE ON *.* TO metaplane_user;
GRANT SELECT ON *.* TO metaplane_user;

Adding MySQL source

To add a source, navigate to the Connections page and click the MySQL button. A modal will prompt you for the credentials you just created, then allow you to save the connection for testing.

Metaplane supports both SSH and Reverse SSH tunnel setups. Use the checkbox in the modal shown below to use either option.

Whitelisted IPs

Metaplane will always connect to your data warehouse from these static IP addresses:


What’s Next