Sejak Laravel 5.4, secara default apabila menjalankan command:
php artisan migrate
Maka akan mendapatkan error apabila menggunakan versi MySQL v5.7.7
Sejak Laravel 5.4, secara default apabila menjalankan command:
php artisan migrate
Maka akan mendapatkan error apabila menggunakan versi MySQL v5.7.7
Problem diatas sebabkan karena Laravel mengubah default database character set menjadi utf8mb4
. Untuk mengasi masalah tersebut, buka file App\Providers\AppServiceProvider.php
kemudian pada top section masukkan code berikut:
use Illuminate\Support\Facades\Schema;
Kemudian pada boot method, tambahkan code berikut:
Schema::defaultStringLength(191);
Sehingga code lengkap dari AppServiceprovider.php
menjadi seperti ini:
<?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()
{
//
}
}