- Laravel5.4以上
- MySQL5.7.7未満
[Illuminate\Database\QueryException] SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was t oo long; max key length is 767 bytes (SQL: alter table users add unique users_email_unique(email))
https://qiita.com/beer_geek/items/6e4264db142745ea666f
対策3を選択
対策3:カラムの最大長を変更し、767bytes以上の文字列が入らないようにする varchar(191) のカラムを作成すれば、191 * 4 = 764bytesのため、エラーが発生しない。
app\Providers\AppServiceProvider.php に以下の記載を追加することで、
最大長未指定時のdefault値を変更することが可能である。
use Illuminate\Support\Facades\Schema; public function boot() { Schema::defaultStringLength(191); }