使用ddev import-db
将TYPO3 9的生产数据库转储导入ddev项目时出现mysql错误:
“索引列大小太大。最大列大小为767字节。”
这似乎是将常规utf8字符集数据库导入ddev的结果,ddev是为utf8mb4设置的,使用4个字节表示字符,并超出索引列的大小。
解决方案是什么? (除了更改列定义,更改我的prod站点和数据库等)
答案 0 :(得分:3)
此问题最初在https://github.com/drud/ddev/issues/654
中进行了讨论和解决现在有一种方法可以覆盖ddev中的默认mysql设置。
example MariaDB/mysql override docs正好显示了这个例子。
在项目的.ddev / mysql目录中,添加一个名为utf8ci.cnf的文件(或任何你想要它的名字,只要它以.cnf结尾),并带有以下内容:
[mysqld]
collation-server = utf8_general_ci
character-set-server = utf8
innodb_large_prefix=false