Главная страницаВеб-технологии ♫ Знаки вопроса при импорте базы данных mysql - проблема кодировок

Знаки вопроса при импорте базы данных mysql - проблема кодировок

03.08.2010 12:07

Проблема кодировок mysql при переносе сайта с хостинг на хостинг вечная проблема. Особенно эта проблема встречается у тех, кто переходит с настроенного хостера на свой только что установленный сервер и не настроенный. И так вы сдампили базу данных своего сайта, и импортируете на виртуальный сервер, или реальный сервер - в итоге получаете вместо кирилицы знаки вопроса ??????????????. Я нашел решение.

И так решение номер рас:

1 способ: ищем файлик php, где идет подключение к базе данных вида mysql_connect. Файл обычно называется init.php. Сразу после подключения к базе вставляем строчку

mysql_query('SET NAMES cp1251');

Иногда движок закодирован в Zend и этот способ становится трудоемким, тогда переходим к второму способу:

2 способ:

Ишем на сервере конфигурационный файл настройки mysql -  /etc/my.cnf (или /etc/mysql/my.cnf)

В раздел [mysqld] добавляем следующее:

default-character-set=utf8
character-set-server=utf8
collation-server=utf8_general_ci
init-connect="SET NAMES utf8"
skip-character-set-client-handshake


Последние строки устанавливают кодировку utf8 принудительно для всех запросов.

В раздел [mysqldump] достаточно добавить

default-character-set=utf8

После этого MySQL будет работать с windows-1251 кодировкой

Если при импорте базы вместо русских букв светятся иероглифы или вопросы, видимо дамп sql был сделан в другой кодировке, не в utf8. Создайте дамп в utf8 или перекодируйте его в нужную кодировку с помощью iconv или recode.

Ну вот вроде решение проблемы!

 

Комментарии 

 
#3 Ромео 12.01.2012 16:28
Цитирую Виталий:
где этот файл найти из первого способа

Я не помню уже, но вроде файл называется init.php там происходит подключение к базе - пароль логин сервер. После подключения надо вставить строчку с кодировкой
Цитировать
 
 
#2 Виталий 09.01.2012 22:53
Цитата:
Помог первый способ! Спасибо большое!!! :lol: :D
\\

где этот файл найти из первого способа
Цитировать
 
 
#1 22.03.2011 07:50
Помог первый способ! Спасибо большое!!! :lol: :D
Цитировать
 
 


   








Веб-дизайнер Роман Шумейко