MySQL5.7.26 执行 Laravel php artisan migrate 报错

MySQL5.7.26 执行 Laravel php artisan migrate 报错

PHP版本:7.4.3nts
MySQL版本:5.7.26
Laravel版本:8.65.0

安装插件

Laravel Jetstream

在执行 php artisan migrate 时出现错误,信息如下:

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_email_unique`(`email`))

参考了官方的数据库迁移文档,参考部分如下:

MySQL5.7.26 执行 Laravel php artisan migrate 报错

使用该方法操作,确实可以解决该问题。但我的MySQL版本并不低于 5.7.7,所以不确定是哪里的问题。

《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

该问题已明确,错误与MySQL版本无关

参考了下面的文章,可以解决了。

MyISAM 暂时没有方法解决,索引长度固定 1000

参考:博客:解决 Specified key was too long ... 767 bytes 的另一種方法

4年前 评论
讨论数量: 2

你不是5.7.26吗。。。文档写的5.7.7,确实是你的低了 :joy: :joy: :joy:

4年前 评论
hmingv (楼主) 4年前
kkokk (作者) 4年前

该问题已明确,错误与MySQL版本无关

参考了下面的文章,可以解决了。

MyISAM 暂时没有方法解决,索引长度固定 1000

参考:博客:解决 Specified key was too long ... 767 bytes 的另一種方法

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!