Error during MySQL move to production

I spent a couple weeks working on getting to know Metabase. I’ve invested a lot of time updated the data model, created a few users, created some denormalized views, created some questions and built some dashboards in the dev environment. Now we’d like to move it to our production AWS RDS instance.

The local dev database is MariaDB 10.5 and production database is MySQL 5.6.10.

I did a mysqldump from dev and created a new database in production on an existing db instance. When I run the file created from mysqldump, I get the following errors;

--------------
CREATE TABLE `DATABASECHANGELOG` (
  `ID` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `AUTHOR` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `FILENAME` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `DATEEXECUTED` datetime NOT NULL,
  `ORDEREXECUTED` int(11) NOT NULL,
  `EXECTYPE` varchar(10) COLLATE utf8mb4_unicode_ci NOT NULL,
  `MD5SUM` varchar(35) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `DESCRIPTION` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `COMMENTS` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `TAG` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `LIQUIBASE` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `CONTEXTS` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `LABELS` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `DEPLOYMENT_ID` varchar(10) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  UNIQUE KEY `idx_databasechangelog_id_author_filename` (`ID`,`AUTHOR`,`FILENAME`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
--------------

ERROR 1071 (42000) at line 22 in file: 'metabase.sql': Specified key was too long; max key length is 767 bytes

Same error on the following tables:

  • permissions
  • permissions_group
  • native_query_snippet
  • metabase_table
  • metabase_field
  • label
  • dimension
  • data_migrations
  • core_user
  • core_session
  • qrtz_triggers
  • qrtz_simprop_triggers
  • qrtz_simple_triggers
  • qrtz_schedule_state
  • qrtz_paused_trigger_grps
  • qrtz_job_details
  • qrtz_cron_triggers
  • qrtz_calendars
  • qrtz_blob_triggers

Is MySQL 5.7 required for Metabase or am I missing something?

Hi @av84fun
Yes, MySQL 5.7.7 or MariaDB 10.2.2 is the required minimum:
https://www.metabase.com/docs/latest/operations-guide/migrating-from-h2.html#notes

Thats embarrassing. I should have caught that. Thanks for the quick reply.