Кодировка в MySQL

Перенёс сайт на новый хостинг  и получил проблему в кодировке MySQL.

Полез копаться в базу через phpMyAdmin. Везде кодировки стоят правильные. Думал, может создал базы как–то не так?

И вот, перекапывая  phpMyAdmin в поисках проблемы, обнаружил в самом низу перечня таблиц интересную 

строчку.  Там было количество таблиц, количество записей, сколько оно всё места занимает и всё такое. Среди 

прочего там было написано «latin1_swedish_ci». Что означает кодировку по–умолчанию, не UTF-8 («utf8_general_ci»),

как положено, а iso-8859-1 («latin1_swedish_ci»), что приводит к полному отсутствию кириллицы и замене её на 

знаки вопроса.

Лечится проблема

элементарно:

ALTER DATABASE `ваша_база` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci

Либо через phpMyAdmin:

«Операции» > «Сравнения»

, из выпадающего списка выбрать нужное — utf8_general_ci.

Всё. Теперь вновь созданные записи будут в правильной кодировке.

 

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

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