Я знаю, что этот вопрос задают много, и я также нашел много советов, но ни один из них не подходит для меня. Мой сайт размещен на siteground.com. Пока все отлично работает, и вдруг я получил
Ошибка: 1118 Слишком большой размер строки (> 8126). Может помочь изменение некоторых столбцов на TEXT или BLOB или использование ROW_FORMAT = DYNAMIC или ROW_FORMAT = COMPRESSED. В текущем формате строки префикс BLOB размером 768 байт хранится в строке.
на «случайной» основе.
На самом деле весь мой веб-сайт (joomla 3.7.4 / PHP 7.0.22 / sql-server: 5.6.36-82.1-log — Percona Server (GPL), выпуск 82.1, версия 1a00d79) с большим количеством пользовательского кода больше не может использоваться, потому что этого.
Теперь я понимаю, что это как-то связано с общим размером строки, но как база данных и php-любитель, я до сих пор не понимаю.
Могу ли я что-нибудь сделать с этой проблемой? Или я «застрял», если хостер не может или не хочет что-то менять в настройках?
Что я сделал до сих пор:
Так как у меня нет доступа к настройкам сервера, я начал ограничивать все «int» и «char». После отсутствия эффекта я начинаю менять все типы на «medium-txt» и «tiny-txt». В третьем раунде я изменил все типы на «txt», но также не изменил результат. Я дополнительно все преобразовал utf8_general_ci
в utf8mb4_general_ci
, Я сделал все, что мог, но безуспешно.
Как вы можете прочитать из вышеприведенного текста, я как слепой парень, потерянный в лесу, который отчаянно пытается все без какой-либо экспертизы решить эту проблему.
Дополнительная информация (согласно phpMyAdmin):
innodb log file size = 128MiB
innodb_strict_mode = OFF
Tabel-Typ = InnoDB
Любая помощь будет оценена. Либо в возможных решениях, либо в понимании актуальных проблем. Спасибо в продвинутом!
Посмотрите на документацию MySQL о Предел размера строки Вот:
https://dev.mysql.com/doc/refman/5.7/en/column-count-limit.html это может быть полезно.
Других решений пока нет …