laravel数据迁移,执行迁移文件时错误

解决方案一

laravel为了支持某些字符表情使用的是utf8mb4编码

升级mysql到5.7.7版本以上让他支持utf8mb4编码

解决方案二

修改config/database.php的配置项

//'charset' => 'utf8mb4',
//'collation' => 'utf8mb4_unicode_ci',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',

解决方案三

MySql版本到5.5.3以上,使用utf8mb4;

手动配置迁移命令migrate生成的默认字符串长度,在Providers/AppServiceProvider.php中调用Schema::defaultStringLength方法来实现配置:

use Illuminate\Support\Facades\Schema;
/**
* Bootstrap any application services.
* @return void
*/
public function boot()
{
   Schema::defaultStringLength(191);
}

posted @ 2017-10-19 11:08:00 kuye 阅读(6278) 评论(0)
发表评论
昵称
邮箱
网址