laravel - SQLSTATE[42000]:语法错误或访问冲突:1071 指定的键太长;最大密钥长度为 1000 字节
问题描述
我正在尝试安装 laravel voyager 但收到此错误。
SQLSTATE[42000]:语法错误或访问冲突:1071 指定的键太长;最大密钥长度为 1000 字节(SQL:alter table
users
add uniqueusers_email_unique
(
这是我的 \app\Providers\AppServiceProvider.php
public function boot()
{
Schema::defaultStringLength(191);
}
这是我的 config\database.php
'charset' => 'utf8',
'collation' => 'utf8mb4_unicode_ci',
'prefix' => '',
'prefix_indexes' => true,
'strict' => true,
'engine' => 'InnoDB ROW_FORMAT=DYNAMIC',
我的数据库有颜色utf8mb4_unicode_ci
解决方案
你可以增加那个
SET @@global.innodb_large_prefix = 1;
例如
mysql> set global innodb_large_prefix = ON;
Query OK, 0 rows affected (0.00 sec)