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,所以不确定是哪里的问题。

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
最佳答案

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

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

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

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

2年前 评论
讨论数量: 2

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

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

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

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

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

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

2年前 评论

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