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

  • 20.11.2015
  • 50 190
  • 10
  • 19.01.2020
  • 15
  • 14
  • 1
Исправляем ошибку: #1273 - Unknown collation: 'utf8mb4_unicode_ci'

После покупки очередного сайта и переносе его на свой старенький хостинг, столкнулся с этой ошибкой. Сайт на 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'", то прочитайте эту статью.

Была ли эта статья Вам полезна?

Комментарии к статье (10)

    • Hamster

    mysql Ver 14.14 Distrib 5.5.62 - проблема сохраняется, так что обновление мне не помогло :(

      • Hamster

      я дурачок )))) не заметил главного! у меня ошибка не совсем эта, у меня 'ERROR 1273 (HY000) at line 606: Unknown collation: 'utf8mb4_unicode_520_ci'

    • Аня

    Спасибо, огромное!

    • Александр

    Спасибо, не знал. Мне это помогло. И я смог загрузить базу данных

    • Аноним

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

    • Ярослав

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

    • Sairan

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

    • Maks

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

    • VPSadm

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

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

    mysqldump --compatible=mysql40 dbname > dbname.sql

    • Олег

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

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Напоминаем Вам, что Ваше сообщение будет опубликовано только после проверки администратором сайта. Обычно это занимает 1-2 рабочих дня.