Подписка

twitter citroen twitter citroen twitter citroen

Статистика

Rambler's Top100

Конвертируем SQL базы в UTF-8

Вчера столкнулся с такой проблемой: При установке очень полезного плагина для корректной перелинковки страниц WordPress между собой, по ключевым словам, он почему-то создал таблицы в MySQL базе в какой- то редкой экзотической кодировке, WordPress же работает в UTF-8. Поэтому я столкнулся с необходимостью конвертации таблиц.

Как оказалось, сделать это совсем не сложно. Для начала нужно выяснить названия таблиц, которые открыл плагин. В моем случаи это оказались все таблицы с префиксом wp_interlinker. Дальше открываем PHPMyAdmin в админке хостинга, выбираем нашу базу данных и нам открывается листинг таблиц этой базы, в правой части экрана приведены данные о “сравнении” каждой таблицы- это и есть кодировка. Записываем названия таблиц, которые нужно конвентировать, и переходим на вкладку SQL. Теперь нам нужно сформировать запрос на конвертацию наших таблиц. Запрос должен выглядеть следующим образом:

ALTER TABLE `название_таблицы` CONVERT TO CHARACTER SET кодировка COLLATE сравнение

Например для кодировки cp1251 запрос будет выглядеть так:

ALTER TABLE `table_name` CONVERT TO CHARACTER SET cp1251 COLLATE cp1251_general_ci

В моем случаи конвертировать базы плагина нужно было в UTF-8, поэтому мой запрос выглядел так:

ALTER TABLE `wp_interlinker` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci ;
ALTER TABLE `wp_interlinker_backups` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci ;
ALTER TABLE `wp_interlinker_backup_main_1` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci ;
ALTER TABLE `wp_interlinker_divide_chars` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci ;
ALTER TABLE `wp_interlinker_divide_chars_1` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci ;
ALTER TABLE `wp_interlinker_settings` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci ;
ALTER TABLE `wp_interlinker_settings_1` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci ;
ALTER TABLE `wp_interlinker_special_chars` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci ;
ALTER TABLE `wp_interlinker_special_chars_1` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci ;

Разделитель “;” между запросами использовать обязательно, обязательно проверьте все ли таблицы вы успешно конвертировали, в приведенном выше запросе отсутствуют запросы для двух таблиц.