laravel5.*运行migrate命令报错1071 Specified key was too long解决方案
Song •
2422 次浏览 •
0个评论 •
2018年07月18日
laravel5.5使用passport运行migrate命令出现Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytesLaravel错误。
Laravel 5.5默认使用utf8mb4字符编码,而不是之前的utf8编码。因此运行php artisan migrate会出现如下错误:
解决办法
找到app\Providers\AppServiceProvider.php文件夹:
# 引入Schema
use Illuminate\Support\Facades\Schema;
# 在boot中添加
Schema::defaultStringLength(191);
完整例子为:
<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use Illuminate\Support\Facades\Schema;
class AppServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
//
Schema::defaultStringLength(191);
}
/**
* Register any application services.
*
* @return void
*/
public function register()
{
//
}
}
-
Laravel5.5自定义安装(精简安装) 2018-07-17 -
Debian 8部署LNMP环境(php7+maridb且开启maridb远程以及nginx多域名访问 )并配置laravel环境 2018-07-05 -
laravel/php安装使用结巴分词进行中文分词 2018-06-06 -
laravel执行group by的sql时出现Syntax error or access violation: 1055 'db.id' isn't in GROUP BY错误解决办法 2018-06-04 -
[数据库优化-查询优化] 创建索引以及单一/复合索引区别与使用场景分析 2018-06-02

更多相关好文