Mengatasi Galat “1071 Specified key was too long” Saat Melakukan Migration di Laravel 5.4

Laravel pada versi 5.4 telah melakukan perubahan asali (default) pada character set dengan menggunakan utf8mb4 pada basisdatanya (database). Dengan utf8mb4 inilah, memungkin kita dapat menyimpan karakter berupa emoji ke dalam basis data (database).

Namun, masalah baru akan muncul, ketika kita menggunakan MySQL lebih rendah di bawah versi 5.7.7 (< 5.7.7) atau MariaDB lebih rendah di bawah versi 10.2.2 (< 10.2.2). Pada saat kita melakukan migrasi basis data (database migration) menggunakan artisan. Ia akan memunculkan galat (error) seperti berikut:

Ayo Join! di Channel @situsali dapatkan artikel terbarunya via Telegram

Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes”

Seperti gambar di bawah ini:

Oleh karenanya, kita perlu mengkonfigurasi secara manual pada berkas AppServiceProvider.php yang bisa kita temui pada direktori /app/Providers/.

Kita perlu menambahkan kode berikut:

Setelah itu simpan lalu lakukan migrasi kembali dengan perintah:

Maka galat tersebut akan hilang.

2 thoughts on “Mengatasi Galat “1071 Specified key was too long” Saat Melakukan Migration di Laravel 5.4”

Leave a Reply