it-blog.club
Laravel SQLSTATE 42000 Specified key

Laravel SQLSTATE 42000 Specified key

Как можно догадаться ошибка SQLSTATE 42000 связана именно с БД MySQL. В моём случае она возникла при запуске миграций Laravel на хостинге, где стояла старая версия MySQL.

Здесь будет очень хороший совет, повысеть версию MySQL, но бывает, что хотинг не располагает такой возможностью и повезёт, если вы арендуете выделенный сервер и можете всё обновить сами.

Но вот как быть тем, кто не может решить проблему путём обновления софта.

Проблема начала возникать с версии Laravel 5.4, из-за перехода на utf8mb4.

Я же смог решить проблему путём внесения изменений в один из классов фреймворка.

Файл располагается по адресу: ПРОЕКТ/app/Providers/AppServiceProvider.php

Добавьте перед классом новый use: use Illuminate\Support\Facades\Schema;

Затем, в методе boot пропишите следующее:


Schema::defaultStringLength(191);

После сохранения изменений можно перезапустить миграции и всё должно без проблем пройти.


it-blog.club 8
Автор: Ярослав Хмель


Если Вам понравилась статья, то можете поддержать блог переведя N сумму на кофе авторам или оплату хостинга!
В любом случае спасибо! А так же не забывайте про группу в ВК
ПОИСК ПО САЙТУ
Поддержать