Задать вопрос
dauren101
@dauren101
Python, Django ,Vue.js

Laravel too long max key length is 767 bytes?

При миграции выходит ошибка mysql. Too long: max key length is 767 bytes
  • Вопрос задан
  • 1998 просмотров
Подписаться 1 Оценить 2 комментария
Решения вопроса 1
dauren101
@dauren101 Автор вопроса
Python, Django ,Vue.js
Вообще, идем в настройки ларавела. Db.php и меняем кодировку с utf8m64 на utf8
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
Melkij
@Melkij
PostgreSQL DBA
Размер одной индексной записи ограничен.
Для используемой у вас версии mysql, размера страницы памяти - максимальная длина индексной записи 767 байт. Т.е. 255 символов utf8, 191 символ utf8mb4 и соответствующая арифметика для составных ключей. Уменьшите поле или используйте индексный префикс чтобы длина индексной записи влезала в 767 байт.
Ответ написан
Комментировать
@Yadalay
Php, Mysql, Html, Css, Js/Jquery/Ajax, Laravel
У меня та же ошибка была. Поэтому в полях типа varchar я использовал максимум 150 символов, а не 255. Это так у хостера было. На локалке у меня всё норм. Если не хотите уменьшать кол-во символов, то, наверное, надо копаться в настройках mysql.
Ответ написан
Комментировать
@varz62
вот мой ответ на другом сервисе
http://ru.stackoverflow.com/questions/620958/%d0%9...
а вообще проблема обсуждалась уже не раз
Ответ написан
Комментировать
Попробуйте просто изменить кодировку utf8mb4 на utf8.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы