dauren101
@dauren101
Python, Django ,Vue.js

Laravel too long max key length is 767 bytes?

При миграции выходит ошибка mysql. Too long: max key length is 767 bytes
  • Вопрос задан
  • 1973 просмотра
Решения вопроса 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.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы