Skip to main content

Prerequisites

  • The hostname for the MySQL database server
  • The username/password for the MySQL database server
  • The name of the database to use within the MySQL database server

Setup

Manual

Add the following to a .env file in your Cube project:

Environment Variables

Pre-Aggregation Feature Support

count_distinct_approx

Measures of type count_distinct_approx can not be used in pre-aggregations when using MySQL as a source database.

Pre-Aggregation Build Strategies

To learn more about pre-aggregation build strategies, head here.
By default, MySQL uses batching to build pre-aggregations.

Batching

No extra configuration is required to configure batching for MySQL.

Export Bucket

MySQL does not support export buckets.

SSL

To enable SSL-encrypted connections between Cube and MySQL, set the CUBEJS_DB_SSL environment variable to true. For more information on how to configure custom certificates, please check out Enable SSL Connections to the Database.

Additional configuration

Connecting via a Unix socket

To connect to a local MySQL database using a Unix socket, use the CUBEJS_DB_SOCKET_PATH environment variable, for example:
When doing so, CUBEJS_DB_HOST will be ignored.

Connecting to MySQL 8

MySQL 8 uses a new default authentication plugin (caching_sha2_password) whereas previous version used mysql_native_password. Please see this answer on StackOverflow for a workaround.
For additional details, check the relevant issue on GitHub.