Исправляем ошибку: #1273 - Unknown collation: 'utf8mb4_unicode_ci'

  • Автор:
  • Опубликовано:
  • Изменено:
  • Просмотры: 14 075
  • Комментарии: 6
  • Рейтинг: 100,00%
  • Голосов: 9

После покупки очередного сайта и переносе его на свой старенький хостинг, столкнулся с этой ошибкой. Сайт на CSM WordPress. Данная проблема возникает из-за того, что начиная с версии MySQL 5.5.3 и выше - появилось сравнение utf8mb4_unicode_ci, которое не поддерживается более старыми версиями. Из-за этого при импорте базы из дампа более новой версии (в моем случае это Mysql 5.5.45) на старую версию - 5.1.73 и вылезла данная ошибка.

error #1273 - Unknown collation: 'utf8mb4_unicode_ci'

utf8mb4_unicode_ci

Решение проблемы

Итак, проблему можно решить как минимум двумя разными способами:

Правильный способ

Просто обновить MySQL до версии 5.5.3 или выше. После этого данная ошибка должна самоустраниться

НЕ Правильный способ

Открываем дамп базы данных любым текстовым редактором и делаем замену строки "utf8mb4_unicode_ci" на "utf8_general_ci" для всех найденных совпадений. После этого сохраняем новую версию дампа и уже её импортируем в MySQL. Если у вас вылезет ошибка "Unknown character set: 'utf8mb4'", то прочитайте эту статью.

Оценить статью

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (9 оценок, среднее: 5,00 из 5)
  • Олег:

    Спасибо! Ваш совет мне помог.

  • VPSadm:

    Но бывают случаи, когда нельзя обновить mysql, и нужно всё же сделать импорт дампа с более новой версии mysql. Тогда нужно просто делать выгрузку дампа с прежнего (нового сервера) с опцией MYSQL40.
    Через phpmyadmin при экспорте выбираете все опции, и в разделе "параметры формата" указываете mysql40.

    Либо, можно то же самое делать из командной строки:

    mysqldump --compatible=mysql40 dbname > dbname.sql

  • Maks:

    Огромное спс, через замену в блокноте ++ всё сделал, только там еще была одна кодировка utf8mb4_unicod_520i - третья..её также нужно заменить на utf8_general_ci

  • Sairan:

    первая и вторая ошибка вылезли, поменял в notepad ++ , помогло
    Спасибо!

  • Ярослав:

    Всем привет, заменил все строки и все сработало. Я просто банально не понимаю как сменить версию MySQl, подскажите кто знает, пожалуйста sayenkoyaroslav@gmail.com хостинг GoDaddy

  • Аноним:

    Спасибо utf8mb4_unicod_520 надо было ещё заменить

Добавить комментарий

Ваш e-mail не будет опубликован.