时间:2020年8月14日11:48:41
composer安装框架初始化
Illuminate\Database\QueryException : SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (SQL: alter table `users` add unique `users_em
ail_unique`(`email`))




继续执行

提示成功了,
然后补交索引:


是因为数据库配置utf8mb4引起的,改回 utf8就可以了
Laravel utf8mb4 默认使用字符集,其中包括支持在数据库中存储 “emojis”。如果您运行的是早于 5.7.7 版本的 MySQL 版本或早于 10.2.2 版本的 MariaDB,您可能需要手动配置迁移生成的默认字符串长度,以便 MySQL 为它们创建索引
————————————————
Illuminate\Database\QueryException : SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (SQL: alter table `password_resets` add index `password_resets_email_index
`(`email`))
'charset' => 'utf8', 'collation' => 'utf8_unicode_ci',

二、网上的教程修改

方法一:
修改表的引擎为innoDB


本文解决了一个在使用Laravel框架时遇到的数据库索引过长的问题,详细介绍了如何通过调整数据库配置从utf8mb4回到utf8来避免SQLSTATE语法错误或访问违规错误,以及修改表引擎为InnoDB的方法。
865

被折叠的 条评论
为什么被折叠?



