Решение ошибки, которая возникала при импорте базы данных MySQL в панели управления phpMyAdmin.
При переносе базы данных WordPress с одного хостинга на другой возникла ошибка:
В целом сообщение об ошибке было таким:
SQL запрос:
-- Структура таблицы `wp_subscribe_reloaded_subscribers`
CREATE TABLE `wp_subscribe_reloaded_subscribers` (
`stcr_id` int(11) NOT NULL,
`subscriber_email` varchar(100) COLLATE utf8mb4_unicode_520_ci NOT NULL,
`salt` int(15) NOT NULL,
`subscriber_unique_id` varchar(50) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL,
`add_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci
Ответ MySQL:
#1273 - Unknown collation: 'utf8mb4_unicode_520_ci'
Причина оказалась в том, что таблица в базе данных MySQL плагина Subscribe To Comments Reloaded находилась в кодировке utf8mb4_unicode_520_ci. А для верной работы необходима кодировка utf8mb4_unicode_ci.
Ошибка Unknown utf8mb4_unicode_520 может возникнуть из-за неверного формата таблицы любого другого плагина. Например, в одном из случаев, у меня такая ошибка возникала сразу во многих других таблицах (не только относящихся к плагинам), например:
CREATE TABLE `wp_commentmeta` (
`meta_id` bigint(20) UNSIGNED NOT NULL,
`comment_id` bigint(20) UNSIGNED NOT NULL DEFAULT '0',
`meta_key` varchar(255) COLLATE utf8mb4_unicode_520_ci DEFAULT NULL,
`meta_value` longtext COLLATE utf8mb4_unicode_520_ci
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci
Любая ошибка такого рода (не важно что за таблица или плагин) исправляется одинаково. Причем операции со вкладкой «Структура» можно и пропускать и делать только «Операции» (об этом ниже). Но чтобы всё точно работало, лучше сделать и то и другое.
Если ИМЕЕТСЯ доступ к базе данных старого хостинга
Заходим в эту базу через phpMyAdmin.
В колонке слева выбираем таблицу wp_subscribe_reloaded_subscribers. Сверху панели выбираем вкладку «Структура».
Нажимаем изменить и меняем сравнение utf8mb4_unicode_520_ci на utf8mb4_unicode_ci.
Затем выбираем вкладку «Операции», снова выбираем кодировку utf8mb4_unicode_ci, отмечаем галочку Change all column collations. Нажимаем вперед, подтверждаем, что хотим выполнить эту операцию.
После этого можно экспортировать свою базу данных и импортировать на новый хостинг. На этот раз всё должно пройти гладко.
Если доступа к базе данных старого хостинга НЕТ
В этом случае надо открыть базу данных через специализированные программы, например, Notepad++ или Transmit в Mac OS. Там найти строчки utf8mb4_unicode_520_ci и заменить их на utf8mb4_unicode_ci. Сохранить и дальше импортировать к себе на хостинг.
Если ошибку вызывает другой плагин, не обязательно wp_subscribe_reloaded_subscribers или какая иная таблица, то действовать нужно по аналогии с этой инструкцией, но уже для другой таблицы.
Спасибо, помогло
Огромное спасибо, помогло!!!!!!!!!
Благодарю за информацию!!! Помогло)
Все отлично сработало!!! Спасибо!!!
Спасибо за помощь!!!
Спасибо БОЛЬШОЕ!!!!
Благодарю за помощь. Единственное только, все utf8mb4_unicode_520_ci можно поменять на utf8mb4_unicode_ci в блокноте Notepad+. Там специальная функция замены есть, чтобы вручную все не менять в phpmyadmin
Спасибо большое!
Спасибо работает, помог последний совет с заменой строчки utf8mb4_unicode_520_ci и заменить их на utf8mb4_unicode_ci.
Спасибо большое!
Оптимальное решение — напрячь хостера. Это его косяк, что не идет в ногу со временем и не обновляет версию Mysql. Если просто в блокноте поменять, то обычно работает, НО! часть функций может отвалиться, у меня в одном шаблоне так и произошло.
Ну или менять в таблицах, но там ведь их может быть много, вручную править не комильфо.
НЕ помогло, вылезла другая ошибка
Спасибо за помощь. Помогло!
Большое спасибо!
Спасибо, здоровья и всех благ тебе, добрый человек!!
Премногимше вам благодати!!!!!!!!!!!!!!!!!!!!
Думал, что комментарии накручены и тема не рабочая.
Уж не верил в это, но попробовал и сработало. Большое спасибо, правда!
Накрутки бывают там, где что-то продают. Тут же нечего продавать, даже баннеров сейчас на сайте никаких нет. Рад что пригодилась информация.