Laravel 5.4: #1071 Specified key was too long; max key length is 767

Heute wollte ich einen Dump meiner Datenbank der Entwicklungsumgebung auf den Datenbank-Server des Hosters übertragen. Beim Importieren des Dumps kam jedoch folgender Fehler:

#1071 Specified key was too long; max key length is 767

Nach einigem Suchen fand ich folgende (bei mir wirksame) Lösung:

In meiner Laravel 5.4 Entwicklungsumgebung in das Verzeichnis App/Providers wechseln und in der Datei AppServiceProvider.php folgendes anpassen:

use Illuminate\Support\Facades\Schema;

public function boot()
{
    Schema::defaultStringLength(191);
}

 

Erklärung: Dieser Fehler erscheint, da Laravel 5.4 den Standard-Datenbank-Zeichensatz auf utf8mb4 umgestellt hat, damit auch emojis gespeichert werden können. Solltest du MySql V5.7.7 im Einsatz haben, musst du nichts unternehmen.

Laravel 5.4: #1071 Specified key was too long; max key length is 767

Schreibe einen Kommentar