Error: Migrating from using the H2 database to MySQL

I run the command to migrate database ( I’m sure there are no tables in my database )

docker run --name metabase-migration \
    -v /data/metabase-data:/metabase-data \
    -e "MB_DB_FILE=/metabase-data/metabase.db" \
    -e "MB_DB_TYPE=mysql" \
    -e "MB_DB_DBNAME=mydb" \
    -e "MB_DB_PORT=3306" \
    -e "MB_DB_USER=myuser" \
    -e "MB_DB_PASS=myps" \
    -e "MB_DB_HOST=myhost" \
    metabase/metabase load-from-h2

output

05-27 11:56:07 DEBUG plugins.classloader :: Using NEWLY CREATED classloader as shared context classloader: clojure.lang.DynamicClassLoader@188ac8a3
05-27 11:56:08 INFO metabase.util :: Loading Metabase...
05-27 11:56:08 INFO metabase.util :: Maximum memory available to JVM: 500.0 MB
05-27 11:56:21 INFO util.encryption :: Saved credentials encryption is DISABLED for this Metabase instance. 🔓 
 For more information, see https://metabase.com/docs/latest/operations-guide/encrypting-database-details-at-rest.html
05-27 11:56:29 WARN metabase.core :: WARNING: You have enabled namespace tracing, which could log sensitive information like db passwords.
05-27 11:56:30 INFO metabase.db :: Verifying mysql Database Connection ...
05-27 11:56:30 INFO driver.impl :: Registered abstract driver :sql  🚚
Load driver :sql took 77.8 ms
05-27 11:56:30 INFO driver.impl :: Registered abstract driver :sql-jdbc (parents: [:sql]) 🚚
Load driver :sql-jdbc took 95.6 ms
05-27 11:56:30 INFO driver.impl :: Registered driver :mysql (parents: [:sql-jdbc]) 🚚
Load driver :mysql took 208.5 ms
05-27 11:56:30 INFO driver.impl :: Initializing driver :sql...
05-27 11:56:30 INFO driver.impl :: Initializing driver :sql-jdbc...
05-27 11:56:30 INFO driver.impl :: Initializing driver :mysql...
05-27 11:56:30 INFO metabase.db :: Successfully verified MySQL 8.0.18 application database connection. ✅
05-27 11:56:30 INFO metabase.db :: Running Database Migrations...
05-27 11:56:30 INFO metabase.db :: Setting up Liquibase...
05-27 11:56:30 INFO metabase.db :: Liquibase is ready.
05-27 11:56:30 INFO db.liquibase :: Checking if Database has unrun migrations...
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 INFO db.liquibase :: Database has unrun migrations. Waiting for migration lock to be cleared...
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 INFO db.liquibase :: Migration lock is cleared. Running migrations...
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:33 ERROR changelog.ChangeSet :: Change Set migrations/000_migrations.yaml::1::agilliland failed.  Error: (conn=72) Table 'core_organization' already exists [Failed SQL: CREATE TABLE `metabase`.`core_organization` (`id` INT AUTO_INCREMENT NOT NULL, `slug` VARCHAR(254) NOT NULL, `name` VARCHAR(254) NOT NULL, `description` TEXT NULL, `logo_url` VARCHAR(254) NULL, `inherits` BIT(1) NOT NULL, CONSTRAINT `PK_CORE_ORGANIZATION` PRIMARY KEY (`id`), UNIQUE (`slug`)) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci]
05-27 11:56:33 WARN metabase.util :: auto-retry metabase.db.liquibase$migrate_up_if_needed_BANG_$fn__20486@67be4ad3: Migration failed for change set migrations/000_migrations.yaml::1::agilliland:
     Reason: liquibase.exception.DatabaseException: (conn=72) Table 'core_organization' already exists [Failed SQL: CREATE TABLE `metabase`.`core_organization` (`id` INT AUTO_INCREMENT NOT NULL, `slug` VARCHAR(254) NOT NULL, `name` VARCHAR(254) NOT NULL, `description` TEXT NULL, `logo_url` VARCHAR(254) NULL, `inherits` BIT(1) NOT NULL, CONSTRAINT `PK_CORE_ORGANIZATION` PRIMARY KEY (`id`), UNIQUE (`slug`)) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci]
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 ERROR changelog.ChangeSet :: Change Set migrations/000_migrations.yaml::1::agilliland failed.  Error: (conn=72) Table 'core_organization' already exists [Failed SQL: CREATE TABLE `metabase`.`core_organization` (`id` INT AUTO_INCREMENT NOT NULL, `slug` VARCHAR(254) NOT NULL, `name` VARCHAR(254) NOT NULL, `description` TEXT NULL, `logo_url` VARCHAR(254) NULL, `inherits` BIT(1) NOT NULL, CONSTRAINT `PK_CORE_ORGANIZATION` PRIMARY KEY (`id`), UNIQUE (`slug`)) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci]
05-27 11:56:34 WARN metabase.util :: auto-retry metabase.db.liquibase$migrate_up_if_needed_BANG_$fn__20486@67be4ad3: Migration failed for change set migrations/000_migrations.yaml::1::agilliland:
     Reason: liquibase.exception.DatabaseException: (conn=72) Table 'core_organization' already exists [Failed SQL: CREATE TABLE `metabase`.`core_organization` (`id` INT AUTO_INCREMENT NOT NULL, `slug` VARCHAR(254) NOT NULL, `name` VARCHAR(254) NOT NULL, `description` TEXT NULL, `logo_url` VARCHAR(254) NULL, `inherits` BIT(1) NOT NULL, CONSTRAINT `PK_CORE_ORGANIZATION` PRIMARY KEY (`id`), UNIQUE (`slug`)) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci]
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 ERROR changelog.ChangeSet :: Change Set migrations/000_migrations.yaml::1::agilliland failed.  Error: (conn=72) Table 'core_organization' already exists [Failed SQL: CREATE TABLE `metabase`.`core_organization` (`id` INT AUTO_INCREMENT NOT NULL, `slug` VARCHAR(254) NOT NULL, `name` VARCHAR(254) NOT NULL, `description` TEXT NULL, `logo_url` VARCHAR(254) NULL, `inherits` BIT(1) NOT NULL, CONSTRAINT `PK_CORE_ORGANIZATION` PRIMARY KEY (`id`), UNIQUE (`slug`)) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci]
05-27 11:56:34 WARN metabase.util :: auto-retry metabase.db.liquibase$migrate_up_if_needed_BANG_$fn__20486@67be4ad3: Migration failed for change set migrations/000_migrations.yaml::1::agilliland:
     Reason: liquibase.exception.DatabaseException: (conn=72) Table 'core_organization' already exists [Failed SQL: CREATE TABLE `metabase`.`core_organization` (`id` INT AUTO_INCREMENT NOT NULL, `slug` VARCHAR(254) NOT NULL, `name` VARCHAR(254) NOT NULL, `description` TEXT NULL, `logo_url` VARCHAR(254) NULL, `inherits` BIT(1) NOT NULL, CONSTRAINT `PK_CORE_ORGANIZATION` PRIMARY KEY (`id`), UNIQUE (`slug`)) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci]
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 11:56:34 ERROR changelog.ChangeSet :: Change Set migrations/000_migrations.yaml::1::agilliland failed.  Error: (conn=72) Table 'core_organization' already exists [Failed SQL: CREATE TABLE `metabase`.`core_organization` (`id` INT AUTO_INCREMENT NOT NULL, `slug` VARCHAR(254) NOT NULL, `name` VARCHAR(254) NOT NULL, `description` TEXT NULL, `logo_url` VARCHAR(254) NULL, `inherits` BIT(1) NOT NULL, CONSTRAINT `PK_CORE_ORGANIZATION` PRIMARY KEY (`id`), UNIQUE (`slug`)) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci]
liquibase.exception.MigrationFailedException: Migration failed for change set migrations/000_migrations.yaml::1::agilliland:
     Reason: liquibase.exception.DatabaseException: (conn=72) Table 'core_organization' already exists [Failed SQL: CREATE TABLE `metabase`.`core_organization` (`id` INT AUTO_INCREMENT NOT NULL, `slug` VARCHAR(254) NOT NULL, `name` VARCHAR(254) NOT NULL, `description` TEXT NULL, `logo_url` VARCHAR(254) NULL, `inherits` BIT(1) NOT NULL, CONSTRAINT `PK_CORE_ORGANIZATION` PRIMARY KEY (`id`), UNIQUE (`slug`)) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci]
	at liquibase.changelog.ChangeSet.execute(ChangeSet.java:637)
	at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:53)
	at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:83)
	at liquibase.Liquibase.update(Liquibase.java:202)
	at liquibase.Liquibase.update(Liquibase.java:179)
	at liquibase.Liquibase.update(Liquibase.java:175)
	at metabase.db.liquibase$migrate_up_if_needed_BANG_$fn__20486.invoke(liquibase.clj:126)
	at metabase.util$do_with_auto_retries.invokeStatic(util.clj:423)
	at metabase.util$do_with_auto_retries.invoke(util.clj:415)
	at metabase.util$do_with_auto_retries.invokeStatic(util.clj:430)
	at metabase.util$do_with_auto_retries.invoke(util.clj:415)
	at metabase.util$do_with_auto_retries.invokeStatic(util.clj:430)
	at metabase.util$do_with_auto_retries.invoke(util.clj:415)
	at metabase.util$do_with_auto_retries.invokeStatic(util.clj:430)
	at metabase.util$do_with_auto_retries.invoke(util.clj:415)
	at metabase.db.liquibase$migrate_up_if_needed_BANG_.invokeStatic(liquibase.clj:126)
	at metabase.db.liquibase$migrate_up_if_needed_BANG_.invoke(liquibase.clj:114)
	at metabase.db$migrate_BANG_$fn__21263$fn__21264.invoke(db.clj:208)
	at metabase.db.liquibase$do_with_liquibase.invokeStatic(liquibase.clj:38)
	at metabase.db.liquibase$do_with_liquibase.invoke(liquibase.clj:29)
	at metabase.db$migrate_BANG_$fn__21263.invoke(db.clj:203)
	at clojure.java.jdbc$db_transaction_STAR_.invokeStatic(jdbc.clj:799)
	at clojure.java.jdbc$db_transaction_STAR_.invoke(jdbc.clj:769)
	at clojure.java.jdbc$db_transaction_STAR_.invokeStatic(jdbc.clj:834)
	at clojure.java.jdbc$db_transaction_STAR_.invoke(jdbc.clj:769)
	at clojure.java.jdbc$db_transaction_STAR_.invokeStatic(jdbc.clj:782)
	at clojure.java.jdbc$db_transaction_STAR_.invoke(jdbc.clj:769)
	at metabase.db$migrate_BANG_.invokeStatic(db.clj:194)
	at metabase.db$migrate_BANG_.invoke(db.clj:173)
	at metabase.db$run_schema_migrations_BANG_.invokeStatic(db.clj:329)
	at metabase.db$run_schema_migrations_BANG_.invoke(db.clj:323)
	at metabase.db$setup_db_BANG__STAR_$fn__21342.invoke(db.clj:346)
	at metabase.util$do_with_us_locale.invokeStatic(util.clj:649)
	at metabase.util$do_with_us_locale.invoke(util.clj:635)
	at metabase.db$setup_db_BANG__STAR_.invokeStatic(db.clj:344)
	at metabase.db$setup_db_BANG__STAR_.invoke(db.clj:339)
	at metabase.db$setup_db_from_env_BANG__STAR_.invokeStatic(db.clj:354)
	at metabase.db$setup_db_from_env_BANG__STAR_.invoke(db.clj:351)
	at metabase.db$setup_db_BANG_$fn__21353.invoke(db.clj:368)
	at metabase.db$setup_db_BANG_.invokeStatic(db.clj:366)
	at metabase.db$setup_db_BANG_.invoke(db.clj:361)
	at metabase.cmd.load_from_h2$load_from_h2_BANG_.invokeStatic(load_from_h2.clj:240)
	at metabase.cmd.load_from_h2$load_from_h2_BANG_.invoke(load_from_h2.clj:234)
	at clojure.lang.Var.invoke(Var.java:384)
	at metabase.cmd$load_from_h2.invokeStatic(cmd.clj:37)
	at metabase.cmd$load_from_h2.invoke(cmd.clj:30)
	at metabase.cmd$load_from_h2.invokeStatic(cmd.clj:33)
	at metabase.cmd$load_from_h2.invoke(cmd.clj:30)
	at clojure.lang.AFn.applyToHelper(AFn.java:152)
	at clojure.lang.AFn.applyTo(AFn.java:144)
	at clojure.core$apply.invokeStatic(core.clj:665)
	at clojure.core$apply.invoke(core.clj:660)
	at metabase.cmd$run_cmd$fn__67316.invoke(cmd.clj:127)
	at metabase.cmd$run_cmd.invokeStatic(cmd.clj:127)
	at metabase.cmd$run_cmd.invoke(cmd.clj:123)
	at clojure.lang.Var.invoke(Var.java:388)
	at metabase.core$run_cmd.invokeStatic(core.clj:133)
	at metabase.core$run_cmd.invoke(core.clj:131)
	at metabase.core$_main.invokeStatic(core.clj:155)
	at metabase.core$_main.doInvoke(core.clj:150)
	at clojure.lang.RestFn.applyTo(RestFn.java:137)
	at metabase.core.main(Unknown Source)
Caused by: liquibase.exception.DatabaseException: (conn=72) Table 'core_organization' already exists [Failed SQL: CREATE TABLE `metabase`.`core_organization` (`id` INT AUTO_INCREMENT NOT NULL, `slug` VARCHAR(254) NOT NULL, `name` VARCHAR(254) NOT NULL, `description` TEXT NULL, `logo_url` VARCHAR(254) NULL, `inherits` BIT(1) NOT NULL, CONSTRAINT `PK_CORE_ORGANIZATION` PRIMARY KEY (`id`), UNIQUE (`slug`)) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci]
	at liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:356)
	at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:57)
	at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:125)
	at liquibase.database.AbstractJdbcDatabase.execute(AbstractJdbcDatabase.java:1229)
	at liquibase.database.AbstractJdbcDatabase.executeStatements(AbstractJdbcDatabase.java:1211)
	at liquibase.changelog.ChangeSet.execute(ChangeSet.java:600)
	... 61 more
Caused by: java.sql.SQLSyntaxErrorException: (conn=72) Table 'core_organization' already exists
	at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.get(ExceptionMapper.java:243)
	at org.mariadb.jdbc.internal.util.exceptions.ExceptionMapper.getException(ExceptionMapper.java:164)
	at org.mariadb.jdbc.MariaDbStatement.executeExceptionEpilogue(MariaDbStatement.java:258)
	at org.mariadb.jdbc.MariaDbStatement.executeInternal(MariaDbStatement.java:349)
	at org.mariadb.jdbc.MariaDbStatement.execute(MariaDbStatement.java:484)
	at liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:352)
	... 66 more
Caused by: java.sql.SQLException: Table 'core_organization' already exists
	at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.readErrorPacket(AbstractQueryProtocol.java:1599)
	at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.readPacket(AbstractQueryProtocol.java:1461)
	at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.getResult(AbstractQueryProtocol.java:1424)
	at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:178)
	at org.mariadb.jdbc.MariaDbStatement.executeInternal(MariaDbStatement.java:343)
	... 68 more
Command failed with exception: Migration failed for change set migrations/000_migrations.yaml::1::agilliland:
     Reason: liquibase.exception.DatabaseException: (conn=72) Table 'core_organization' already exists [Failed SQL: CREATE TABLE `metabase`.`core_organization` (`id` INT AUTO_INCREMENT NOT NULL, `slug` VARCHAR(254) NOT NULL, `name` VARCHAR(254) NOT NULL, `description` TEXT NULL, `logo_url` VARCHAR(254) NULL, `inherits` BIT(1) NOT NULL, CONSTRAINT `PK_CORE_ORGANIZATION` PRIMARY KEY (`id`), UNIQUE (`slug`)) ENGINE InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci]

my env:

  • metabase: v0.35.3
  • mysql: v8.0.18

I tried to run metabase following command ,and I got an error

docker run -d -p 30000:3000 \
    -e "MB_DB_TYPE=mysql" \
    -e "MB_DB_DBNAME=mydb" \
    -e "MB_DB_PORT=3306" \
    -e "MB_DB_USER=myuser" \
    -e "MB_DB_PASS=myps" \
    -e "MB_DB_HOST=myhost" \
--name metabase metabase/metabase

output:

...
05-27 12:47:29 INFO db.liquibase :: Migration lock is cleared. Running migrations...
05-27 12:47:29 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 12:47:29 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 12:47:29 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 12:47:29 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 12:47:29 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 12:47:47 ERROR changelog.ChangeSet :: Change Set migrations/000_migrations.yaml::100::camsaul failed.  Error: (conn=6) Table 'panda.databasechangelog' doesn't exist [Failed SQL: UPDATE metric SET archived = NOT archived WHERE EXISTS (
  SELECT *
  FROM databasechangelog dbcl
  WHERE dbcl.id = '84'
    AND metric.updated_at < dbcl.dateexecuted
)]
05-27 12:47:47 WARN metabase.util :: auto-retry metabase.db.liquibase$migrate_up_if_needed_BANG_$fn__20486@67aa8e8c: Migration failed for change set migrations/000_migrations.yaml::100::camsaul:
     Reason: liquibase.exception.DatabaseException: (conn=6) Table 'panda.databasechangelog' doesn't exist [Failed SQL: UPDATE metric SET archived = NOT archived WHERE EXISTS (
  SELECT *
  FROM databasechangelog dbcl
  WHERE dbcl.id = '84'
    AND metric.updated_at < dbcl.dateexecuted
)]
05-27 12:47:47 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 12:47:47 WARN changelog.DatabaseChangeLog :: modifyDataType will lose primary key/autoincrement/not null settings for mysql.  Use <sql> and re-specify all configuration if this is the case
05-27 12:47:47 ERROR changelog.ChangeSet :: Change Set migrations/000_migrations.yaml::100::camsaul failed.  Error: (conn=6) Table 'panda.databasechangelog' doesn't exist [Failed SQL: UPDATE metric SET archived = NOT archived WHERE EXISTS (
  SELECT *
  FROM databasechangelog dbcl
  WHERE dbcl.id = '84'
    AND metric.updated_at < dbcl.dateexecuted
)]
05-27 12:47:47 WARN metabase.util :: auto-retry metabase.db.liquibase$migrate_up_if_needed_BANG_$fn__20486@67aa8e8c: Migration failed for change set migrations/000_migrations.yaml::100::camsaul:
     Reason: liquibase.exception.DatabaseException: (conn=6) Table 'panda.databasechangelog' doesn't exist [Failed SQL: UPDATE metric SET archived = NOT archived WHERE EXISTS (
  SELECT *
  FROM databasechangelog dbcl
  WHERE dbcl.id = '84'
    AND metric.updated_at < dbcl.dateexecuted
)]

...

Hi @gojuukaze
Are you currently running Metabase 0.35.3, as well as using the same version for migration?

In the first run, where you are migrating, you’re using metabase as the database, but in the second run, where you only start Metabase, then you’re using panda as the database.
Did you change something?

I used same version(0.35.3).

I want to migrate to mysql. I got an error When I used “load-from-h2” .

After that I tried to launch metabase with the mysql environment variables on my local macbook ,
I also got an error

@gojuukaze
I understand that you’re trying to migrate from H2 to MySQL, but I cannot reproduce your problem. I’ve tested with 0.35.3 and MySQL 8.0.20

  1. Make sure that the database is empty - metabase or panda or whatever you’re referring to in MB_DB_DBNAME.
  2. Make sure that the MySQL database charset is utf8mb4

https://www.metabase.com/docs/latest/operations-guide/migrating-from-h2.html#notes

@flamber
I found out the problem: I must set COLLATE to utf8mb4_unicode_ci

1 Like

@gojuukaze Excellent. Which collation were you using before?

@flamber utf8mb4_0900_ai_ci

1 Like