Use MariaDB

Hello,

I'm trying to setup MariaDB as database to persist data in metabase.
On windows I have this following env variable :

MB_DB_DBNAME=metabaseappdb
MB_DB_HOST=localhost
MB_DB_PASS=SECRET
MB_DB_PORT=3306
MB_DB_TYPE=MariaDB
MB_DB_USER=USER

When I start metabase :

E:\Metabase>E:\Java\jdk-17.0.3.1\bin\java.exe -jar metabase.jar
Warning: environ value c:\program files (x86)\java\jre1.8.0_241 for key :java-home has been overwritten with E:\Java\jdk-17.0.3.1
WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impact performance.
2022-06-01 14:48:47,531 INFO metabase.util :: Maximum memory available to JVM: 2,0 GB
Exception in thread "main" java.lang.AssertionError: Assert failed: (#{:postgres :h2 :mysql} %)
        at metabase.db.env$env__GT_db_type.invokeStatic(env.clj:39)
        at metabase.db.env$env__GT_db_type.invoke(env.clj:39)
        at metabase.db.env__init.load(Unknown Source)
        at metabase.db.env__init.<clinit>(Unknown Source)
        at java.base/java.lang.Class.forName0(Native Method)
        at java.base/java.lang.Class.forName(Class.java:467)
        at clojure.lang.RT.classForName(RT.java:2212)
        at clojure.lang.RT.classForName(RT.java:2221)
        at clojure.lang.RT.loadClassForName(RT.java:2240)
        at clojure.lang.RT.load(RT.java:449)
        at clojure.lang.RT.load(RT.java:424)
        at clojure.core$load$fn__6856.invoke(core.clj:6115)
        at clojure.core$load.invokeStatic(core.clj:6114)
        at clojure.core$load.doInvoke(core.clj:6098)
        at clojure.lang.RestFn.invoke(RestFn.java:408)
        at clojure.core$load_one.invokeStatic(core.clj:5897)
        at clojure.core$load_one.invoke(core.clj:5892)
        at clojure.core$load_lib$fn__6796.invoke(core.clj:5937)
        at clojure.core$load_lib.invokeStatic(core.clj:5936)
        at clojure.core$load_lib.doInvoke(core.clj:5917)
        at clojure.lang.RestFn.applyTo(RestFn.java:142)
        at clojure.core$apply.invokeStatic(core.clj:669)
        at clojure.core$load_libs.invokeStatic(core.clj:5974)
        at clojure.core$load_libs.doInvoke(core.clj:5958)
        at clojure.lang.RestFn.applyTo(RestFn.java:137)
        at clojure.core$apply.invokeStatic(core.clj:669)
        at clojure.core$require.invokeStatic(core.clj:5996)
        at clojure.core$require.doInvoke(core.clj:5996)
        at clojure.lang.RestFn.invoke(RestFn.java:436)
        at metabase.db.connection$loading__6737__auto____20049.invoke(connection.clj:1)
        at metabase.db.connection__init.load(Unknown Source)
        at metabase.db.connection__init.<clinit>(Unknown Source)
        at java.base/java.lang.Class.forName0(Native Method)
        at java.base/java.lang.Class.forName(Class.java:467)
        at clojure.lang.RT.classForName(RT.java:2212)
        at clojure.lang.RT.classForName(RT.java:2221)
        at clojure.lang.RT.loadClassForName(RT.java:2240)
        at clojure.lang.RT.load(RT.java:449)
        at clojure.lang.RT.load(RT.java:424)
        at clojure.core$load$fn__6856.invoke(core.clj:6115)
        at clojure.core$load.invokeStatic(core.clj:6114)
        at clojure.core$load.doInvoke(core.clj:6098)
        at clojure.lang.RestFn.invoke(RestFn.java:408)
        at clojure.core$load_one.invokeStatic(core.clj:5897)
        at clojure.core$load_one.invoke(core.clj:5892)
        at clojure.core$load_lib$fn__6796.invoke(core.clj:5937)
        at clojure.core$load_lib.invokeStatic(core.clj:5936)
        at clojure.core$load_lib.doInvoke(core.clj:5917)
        at clojure.lang.RestFn.applyTo(RestFn.java:142)
        at clojure.core$apply.invokeStatic(core.clj:669)
        at clojure.core$load_libs.invokeStatic(core.clj:5974)
        at clojure.core$load_libs.doInvoke(core.clj:5958)
        at clojure.lang.RestFn.applyTo(RestFn.java:137)
        at clojure.core$apply.invokeStatic(core.clj:669)
        at clojure.core$require.invokeStatic(core.clj:5996)
        at clojure.core$require.doInvoke(core.clj:5996)
        at clojure.lang.RestFn.invoke(RestFn.java:457)
        at metabase.db$loading__6737__auto____34973.invoke(db.clj:1)
        at metabase.db__init.load(Unknown Source)
        at metabase.db__init.<clinit>(Unknown Source)
        at java.base/java.lang.Class.forName0(Native Method)
        at java.base/java.lang.Class.forName(Class.java:467)
        at clojure.lang.RT.classForName(RT.java:2212)
        at clojure.lang.RT.classForName(RT.java:2221)
        at clojure.lang.RT.loadClassForName(RT.java:2240)
        at clojure.lang.RT.load(RT.java:449)
        at clojure.lang.RT.load(RT.java:424)
        at clojure.core$load$fn__6856.invoke(core.clj:6115)
        at clojure.core$load.invokeStatic(core.clj:6114)
        at clojure.core$load.doInvoke(core.clj:6098)
        at clojure.lang.RestFn.invoke(RestFn.java:408)
        at clojure.core$load_one.invokeStatic(core.clj:5897)
        at clojure.core$load_one.invoke(core.clj:5892)
        at clojure.core$load_lib$fn__6796.invoke(core.clj:5937)
        at clojure.core$load_lib.invokeStatic(core.clj:5936)
        at clojure.core$load_lib.doInvoke(core.clj:5917)
        at clojure.lang.RestFn.applyTo(RestFn.java:142)
        at clojure.core$apply.invokeStatic(core.clj:669)
        at clojure.core$load_libs.invokeStatic(core.clj:5974)
        at clojure.core$load_libs.doInvoke(core.clj:5958)
        at clojure.lang.RestFn.applyTo(RestFn.java:137)
        at clojure.core$apply.invokeStatic(core.clj:669)
        at clojure.core$require.invokeStatic(core.clj:5996)
        at clojure.core$require.doInvoke(core.clj:5996)
        at clojure.lang.RestFn.invoke(RestFn.java:3894)
        at metabase.core$loading__6737__auto____82274.invoke(core.clj:1)
        at metabase.core__init.load(Unknown Source)
        at metabase.core__init.<clinit>(Unknown Source)
        at java.base/java.lang.Class.forName0(Native Method)
        at java.base/java.lang.Class.forName(Class.java:467)
        at clojure.lang.RT.classForName(RT.java:2212)
        at clojure.lang.RT.classForName(RT.java:2221)
        at clojure.lang.RT.loadClassForName(RT.java:2240)
        at clojure.lang.RT.load(RT.java:449)
        at clojure.lang.RT.load(RT.java:424)
        at clojure.core$load$fn__6856.invoke(core.clj:6115)
        at clojure.core$load.invokeStatic(core.clj:6114)
        at clojure.core$load.doInvoke(core.clj:6098)
        at clojure.lang.RestFn.invoke(RestFn.java:408)
        at clojure.lang.Var.invoke(Var.java:384)
        at clojure.lang.Util.loadWithClass(Util.java:251)
        at metabase.core.<clinit>(Unknown Source)

E:\Metabase>

What I'm doing wrong ?

Also tried with MB_DB_TYPE=mariadb

Hi @Exe
Delete all your Java installs and only install Java 11: https://www.metabase.com/docs/latest/operations-guide/java-versions.html
And the Metabase type is mysql:
https://www.metabase.com/docs/latest/operations-guide/environment-variables.html#mb_db_type

I shoud set mysql even if I use mariaDB ?

@Exe Yes. You can only set these options: "h2" , "postgres" , "mysql"
https://www.metabase.com/docs/latest/operations-guide/configuring-application-database.html#mysql-or-mariadb

1 Like

Here is a new error now :

..
2022-06-01 15:26:03,031 INFO db.setup :: Verifying mysql Database Connection ...
2022-06-01 15:26:03,275 INFO db.setup :: Successfully verified MariaDB 10.6.5-MariaDB application database connection.
2022-06-01 15:26:03,275 INFO db.setup :: Running Database Migrations...
2022-06-01 15:26:03,275 INFO db.setup :: Setting up Liquibase...
2022-06-01 15:26:03,447 INFO db.setup :: Liquibase is ready.
2022-06-01 15:26:03,463 INFO db.liquibase :: Checking if Database has unrun migrations...
2022-06-01 15:26:05,807 INFO db.liquibase :: Database has unrun migrations. Waiting for migration lock to be cleared...
2022-06-01 15:26:06,041 INFO db.liquibase :: Migration lock is cleared. Running migrations...
2022-06-01 15:26:06,603 ERROR metabase.core :: Metabase Initialization FAILED
liquibase.exception.LiquibaseException: liquibase.exception.MigrationFailedException: Migration failed for change set migrations/000_migrations.yaml::1::agilliland:
Reason: liquibase.exception.DatabaseException: (conn=106) Index column size too large. The maximum column size is 767 bytes [Failed SQL: (1709) CREATE TABLE metabaseappdb.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.ChangeLogIterator.run(ChangeLogIterator.java:126)
at liquibase.Liquibase.lambda$null$0(Liquibase.java:265)
at liquibase.Scope.lambda$child$0(Scope.java:180)
at liquibase.Scope.child(Scope.java:189)
at liquibase.Scope.child(Scope.java:179)
at liquibase.Scope.child(Scope.java:158)
at liquibase.Scope.child(Scope.java:243)
at liquibase.Liquibase.lambda$update$1(Liquibase.java:264)
at liquibase.Scope.lambda$child$0(Scope.java:180)
at liquibase.Scope.child(Scope.java:189)
at liquibase.Scope.child(Scope.java:179)
at liquibase.Scope.child(Scope.java:158)
at liquibase.Liquibase.runInScope(Liquibase.java:2405)
at liquibase.Liquibase.update(Liquibase.java:211)
at liquibase.Liquibase.update(Liquibase.java:197)
at liquibase.Liquibase.update(Liquibase.java:193)
at metabase.db.liquibase$migrate_up_if_needed_BANG_.invokeStatic(liquibase.clj:142)
at metabase.db.liquibase$migrate_up_if_needed_BANG_.invoke(liquibase.clj:130)
at metabase.db.setup$fn__34832$migrate_BANG___34837$fn__34838$fn__34839.invoke(setup.clj:68)
at metabase.db.liquibase$fn__30491$do_with_liquibase__30496$fn__30497.invoke(liquibase.clj:59)
at metabase.db.liquibase$fn__30491$do_with_liquibase__30496.invoke(liquibase.clj:51)
at metabase.db.setup$fn__34832$migrate_BANG___34837$fn__34838.invoke(setup.clj:63)
at metabase.db.setup$fn__34832$migrate_BANG___34837.invoke(setup.clj:40)
at metabase.db.setup$fn__34891$run_schema_migrations_BANG___34896$fn__34897.invoke(setup.clj:121)
at metabase.db.setup$fn__34891$run_schema_migrations_BANG___34896.invoke(setup.clj:115)
at metabase.db.setup$fn__34943$setup_db_BANG___34948$fn__34949$fn__34952$fn__34953.invoke(setup.clj:147)
at metabase.util$do_with_us_locale.invokeStatic(util.clj:715)
at metabase.util$do_with_us_locale.invoke(util.clj:701)
at metabase.db.setup$fn__34943$setup_db_BANG___34948$fn__34949$fn__34952.invoke(setup.clj:145)
at metabase.db.setup$fn__34943$setup_db_BANG___34948$fn__34949.invoke(setup.clj:144)
at metabase.db.setup$fn__34943$setup_db_BANG___34948.invoke(setup.clj:138)
at metabase.db$setup_db_BANG_$fn__34978.invoke(db.clj:65)
at metabase.db$setup_db_BANG_.invokeStatic(db.clj:60)
at metabase.db$setup_db_BANG_.invoke(db.clj:51)
at metabase.core$init_BANG__STAR_.invokeStatic(core.clj:98)
at metabase.core$init_BANG__STAR_.invoke(core.clj:81)
at metabase.core$init_BANG_.invokeStatic(core.clj:138)
at metabase.core$init_BANG_.invoke(core.clj:133)
at metabase.core$start_normally.invokeStatic(core.clj:150)
at metabase.core$start_normally.invoke(core.clj:144)
at metabase.core$_main.invokeStatic(core.clj:183)
at metabase.core$_main.doInvoke(core.clj:177)
at clojure.lang.RestFn.invoke(RestFn.java:397)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at metabase.core.main(Unknown Source)
Caused by: liquibase.exception.MigrationFailedException: Migration failed for change set migrations/000_migrations.yaml::1::agilliland:
Reason: liquibase.exception.DatabaseException: (conn=106) Index column size too large. The maximum column size is 767 bytes [Failed SQL: (1709) CREATE TABLE metabaseappdb.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:696)
at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:56)
at liquibase.changelog.ChangeLogIterator$2.lambda$null$0(ChangeLogIterator.java:113)
at liquibase.Scope.lambda$child$0(Scope.java:180)
at liquibase.Scope.child(Scope.java:189)
at liquibase.Scope.child(Scope.java:179)
at liquibase.Scope.child(Scope.java:158)
at liquibase.changelog.ChangeLogIterator$2.lambda$run$1(ChangeLogIterator.java:112)
at liquibase.Scope.lambda$child$0(Scope.java:180)
at liquibase.Scope.child(Scope.java:189)
at liquibase.Scope.child(Scope.java:179)
at liquibase.Scope.child(Scope.java:158)
at liquibase.Scope.child(Scope.java:243)
at liquibase.changelog.ChangeLogIterator$2.run(ChangeLogIterator.java:93)
at liquibase.Scope.lambda$child$0(Scope.java:180)
at liquibase.Scope.child(Scope.java:189)
at liquibase.Scope.child(Scope.java:179)
at liquibase.Scope.child(Scope.java:158)
at liquibase.Scope.child(Scope.java:243)
at liquibase.Scope.child(Scope.java:247)
at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:65)
... 45 more
Caused by: liquibase.exception.DatabaseException: (conn=106) Index column size too large. The maximum column size is 767 bytes [Failed SQL: (1709) CREATE TABLE metabaseappdb.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:397)
at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:83)
at liquibase.executor.jvm.JdbcExecutor.execute(JdbcExecutor.java:151)
at liquibase.database.AbstractJdbcDatabase.execute(AbstractJdbcDatabase.java:1279)
at liquibase.database.AbstractJdbcDatabase.executeStatements(AbstractJdbcDatabase.java:1261)
at liquibase.changelog.ChangeSet.execute(ChangeSet.java:661)
... 65 more
Caused by: java.sql.SQLTransientConnectionException: (conn=106) Index column size too large. The maximum column size is 767 bytes
at org.mariadb.jdbc.internal.util.exceptions.ExceptionFactory.createException(ExceptionFactory.java:79)
at org.mariadb.jdbc.internal.util.exceptions.ExceptionFactory.create(ExceptionFactory.java:158)
at org.mariadb.jdbc.MariaDbStatement.executeExceptionEpilogue(MariaDbStatement.java:266)
at org.mariadb.jdbc.MariaDbStatement.executeInternal(MariaDbStatement.java:366)
at org.mariadb.jdbc.MariaDbStatement.execute(MariaDbStatement.java:504)
at com.mchange.v2.c3p0.impl.NewProxyStatement.execute(NewProxyStatement.java:75)
at liquibase.executor.jvm.JdbcExecutor$ExecuteStatementCallback.doInStatement(JdbcExecutor.java:393)
... 70 more
Caused by: org.mariadb.jdbc.internal.util.exceptions.MariaDbSqlException: Index column size too large. The maximum column size is 767 bytes
at org.mariadb.jdbc.internal.util.exceptions.MariaDbSqlException.of(MariaDbSqlException.java:34)
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.exceptionWithQuery(AbstractQueryProtocol.java:194)
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:262)
at org.mariadb.jdbc.MariaDbStatement.executeInternal(MariaDbStatement.java:360)
... 73 more
Caused by: java.sql.SQLException: Index column size too large. The maximum column size is 767 bytes
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.readErrorPacket(AbstractQueryProtocol.java:1695)
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.readPacket(AbstractQueryProtocol.java:1557)
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.getResult(AbstractQueryProtocol.java:1520)
at org.mariadb.jdbc.internal.protocol.AbstractQueryProtocol.executeQuery(AbstractQueryProtocol.java:256)
... 74 more
2022-06-01 15:26:06,635 INFO metabase.core :: Metabase Shutting Down ...
2022-06-01 15:26:06,635 INFO metabase.server :: Shutting Down Embedded Jetty Webserver
2022-06-01 15:26:06,665 INFO metabase.core :: Metabase Shutdown COMPLETE

E:\Metabase>

@Exe You are using a non-default configuration of MariaDB.
Make sure it follows the requirements:
https://www.metabase.com/docs/latest/operations-guide/migrating-from-h2.html#supported-databases-for-storing-your-metabase-application-data

Here more info about my DB.

MariaDB version :

mariadb2

Here is my my.ini :

; The following options will be passed to all MariaDB clients
[client]
port =3306
socket = /tmp/mariadb.sock

; Here follows entries for some specific programs
; The MariaDB server
[wampmariadb64]
;skip-grant-tables
port =3306
socket = /tmp/mariadb.sock
skip-external-locking
key_buffer_size = 256M
max_allowed_packet = 1M
table_open_cache = 256
sort_buffer_size = 2M
net_buffer_length = 8K
read_buffer_size = 1M
read_rnd_buffer_size = 4M
myisam_sort_buffer_size = 64M
basedir="c:/wamp64/bin/mariadb/mariadb10.6.5"
log-error="c:/wamp64/logs/mariadb.log"
datadir="c:/wamp64/bin/mariadb/mariadb10.6.5/data"

;Path to the language
;See Documentation:
; https://mariadb.com/kb/en/mariadb/server-system-variables/#lc_messages
lc-messages-dir="c:/wamp64/bin/mariadb/mariadb10.6.5/share"
lc-messages=fr_FR

; Set the SQL mode
;sql-mode=""
;sql-mode="STRICT_ALL_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER"

; The default storage engine that will be used when create new tables
default-storage-engine=MYISAM
;default-storage-engine=InnoDB

;To avoid warning messages
secure_file_priv="c:/wamp64/tmp"
skip-ssl

; Point the following paths to different dedicated disks
tmpdir="c:/wamp64/tmp"

; Replication Master Server (default)
; binary logging is required for replication
;log-bin=mysql-bin

; binary logging format - mixed recommended
;binlog_format=mixed

; required unique id between 1 and 2^32 - 1
; defaults to 1 if master-host is not set
; but will not function as a master if omitted
server-id = 1

; Replication Slave (comment out master section to use this)
;
; To configure this host as a replication slave, you can choose between
; two methods :
;
; 1) Use the CHANGE MASTER TO command (fully described in our manual) -
; the syntax is:
;
; CHANGE MASTER TO MASTER_HOST=, MASTER_PORT=,
; MASTER_USER=, MASTER_PASSWORD= ;
;
; where you replace , , by quoted strings and
; by the master's port number (3306 by default).
;
; Example:
;
; CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
; MASTER_USER='joe', MASTER_PASSWORD='secret';
;
; OR
;
; 2) Set the variables below. However, in case you choose this method, then
; start replication for the first time (even unsuccessfully, for example
; if you mistyped the password in master-password and the slave fails to
; connect), the slave will create a master.info file, and any later
; change in this file to the variables' values below will be ignored and
; overridden by the content of the master.info file, unless you shutdown
; the slave server, delete master.info and restart the slaver server.
; For that reason, you may want to leave the lines below untouched
; (commented) and instead use CHANGE MASTER TO (see above)
;
; required unique id between 2 and 2^32 - 1
; (and different from the master)
; defaults to 2 if master-host is set
; but will not function as a slave if omitted
;server-id = 2
;
; The replication master for this slave - required
;master-host =
;
; The username the slave will use for authentication when connecting
; to the master - required
;master-user =
;
; The password the slave will authenticate with when connecting to
; the master - required
;master-password =
;
; The port the master is listening on.
; optional - defaults to 3306
;master-port =
;
; binary logging - not required for slaves, but recommended
;log-bin=mysql-bin

; The InnoDB tablespace encryption feature relies on the keyring_file
; plugin for encryption key management, and the keyring_file plugin
; must be loaded prior to storage engine initialization to facilitate
; InnoDB recovery for encrypted tables. If you do not want to load the
; keyring_file plugin at server startup, specify an empty string.
innodb-adaptive-hash-index=on
innodb-buffer-pool-dump-now=off
innodb-buffer-pool-dump-at-shutdown=off
innodb-buffer-pool-load-at-startup=off
innodb-buffer-pool-size=1G
innodb-data-file-path=ibdata1:12M:autoextend:max:500M
innodb-default-row-format=compact
innodb-doublewrite=on
;skip-innodb_doublewrite
innodb-file-per-table=1
innodb-flush-log-at-trx-commit=1
innodb-flush-method=normal
;innodb-force-recovery=1
innodb-ft-enable-stopword=off
innodb-ft-max-token-size=10
innodb-ft-min-token-size=0
innodb-io-capacity=2000
innodb-max-dirty-pages-pct=90
innodb-lock-wait-timeout=600
innodb-log-buffer-size=16M
innodb-log-file-size=20M
innodb-max-dirty-pages-pct=80
innodb-optimize-fulltext-only=1
innodb-page-size=16K
innodb-purge-threads=10
innodb-read-io-threads=10
innodb-stats-on-metadata=0
;innodb-strict-mode=off
innodb-undo-log-truncate=on
innodb-write-io-threads=4
innodb-large-prefix=ON

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash

[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

[mysqld]
port =3306

EDIT:

I added :

innodb-file-format=barracuda
innodb-file-per-table=ON
innodb-large-prefix=ON
innodb_default_row_format = 'DYNAMIC'

to my.ini file and it's working

@Exe You definitely don't want to use MyISAM as the database storage type. Use InnoDB.

1 Like