MySQL

Re: Денвер, MySQL сервер не отвечает, ошибка 2002

Александр » 22 окт 2014, 09:25

Пробуй, только там не всё так просто. То что я тебе написал возможно сработает. Правда, я подзабыл, что в Денвере как я понимаю до сих пор в настройках MySQL прописано чтобы базы в кодировке windows-1251 создавались. Возможно они такое устаревшее безобразие поддерживают из соображений удобства для не разбирающихся совсем пользователей. Но сейчас все переходят на UTF8. Наверное Котеров считает, что кто захочет, тот разберется.. в общем, это я к тому, что в MySQL много мест, где задаются кодировки; как в конфиге, так и например, в самом дампе, в phpMyAdmin тоже задаются.., в phpMyAdmin выставишь в полях настройки, вроде всё ОК, но, например, месяц не будешь пользоваться им, настройки обнулятся т. к. привязаны к сессии в браузере!

Даже, например, ты создал базу в Денвере, она будет в кодировке Windows-1251, но если ты посмотришь свой дамп с хостинга, то увидишь, что там таблицы создаются с инструкцией DEFAULT CHARSET=utf8;
Т. е. они принудительно будут в utf8 создаваться, а захочешь через phpMyAdmin в этой же базе таблицу сделать, она будет создана в кодировке windows-1251.
я могу в чем-то путаться т. к. не знаю точно как у тебя сейчас, но ты должен быть в курсе, что не все там просто с этим, кодировки - вообще, одна из самых неприятных тем.
Я даже статью писал про это
viewtopic.php?f=11&t=21
лучше, конечно от первоисточника почитать
http://dev.mysql.com/doc/refman/5.5/en/charset.html
Кодировки не только в базе имеют значение, кодировки могут задаваться в заголовках html-документов, заголовках ответа сервера (php, .htaccess, httpd.conf), кодировки самих файлов,
Но т. к. сейчас у тебя задача просто разместить сайт локально, думаю, тебе не требуется досконально с MySQL разбираться и перенастраивать Денвер, поэтому и говорю что наверное предыдущий рецепт поможет.
Возможно придется кодировку в ответе сервера Apache переделать в .htaccess в корневой папке сайта (на Денвере), если в браузере кракозябы будут, прописать строку:
Код: Выделить всё
AddDefaultCharset utf-8

Еще, в добавление ко вчерашнему.. сам вспоминаю когда-то мучался с подобным ..
Учитывая, что Денвер настроен на windows-1251. Возможно, тебе нужно не в той последовательности, как я писал раньше:
попробуй в Notepad++ перекодировать этот файл в UTF8 без BOM и поиском/заменой поменять InnoDB на MyISAM

А для начала просто поменять InnoDB на MyISAM в файле дампа и попробовать его загрузить. А если не пойдет, то потом перекодировать в UTF8 без BOM и опять попробовать загрузить.
Александр
 
Сообщения: 259
Зарегистрирован: 20 мар 2014, 17:05

Re: Денвер, MySQL ошибка 1064

Sergej » 22 окт 2014, 22:28

Слушай может я чего не так делаю но что-то не получается, через нотепад++ нажимаю перекодировать, потом опять архивирую и заливаю и
Вот так выходит
MySQL error 1064
Sergej
 
Сообщения: 12
Зарегистрирован: 15 сен 2014, 21:44

Re: Денвер, MySQL сервер не отвечает, ошибка 2002

Александр » 22 окт 2014, 23:18

Файл дампа в конце грубо обрезан. Посмотри исходный дамп с хостинга, там тоже обрезано? Этот дамп, что ты мне прислал, он вообще как сделан? Может твой архиватор режет, вообще, можно дамп после изменения не архивировать, а так заливать как файл.
Если дамп такой уже на хостинге получается, то выясняй, может есть какие-то ограничения на хостинге на размеры дампа, хотя 3.5 Мб вроде не так много, или может браузер режет при загрузке..

На хостинге и в Денвере в настройках php и mySQL могут быть ограничения на размер используемой оперативной памяти, на время работы php скрипта, (phpMyAdmin это и есть php скрипт), на размер загружаемого файла методом POST.
Еще на хостинге могут быть ограничения по нагрузке на процессор и т. п.. Если файл (дамп) обрезанным на хостинге создается, обратись к ним в поддержку.
Александр
 
Сообщения: 259
Зарегистрирован: 20 мар 2014, 17:05

Re: Денвер, MySQL сервер не отвечает, ошибка 2002

Sergej » 23 окт 2014, 20:45

В общем я победил таки денвер, почему дамп был обрезанный не знаю, подозреваю архиватор срезал, потому как в конечном результате я самый первый файл дампа залил, но при запуске сайта на локальном хосте на сайте буквы кракозябами:
Денвер сайт кракозябы
Sergej
 
Сообщения: 12
Зарегистрирован: 15 сен 2014, 21:44

Re: Денвер, MySQL сервер не отвечает, ошибка 2002

Александр » 23 окт 2014, 21:56

Ну да, это похоже на utf8, который интерпретируется как windows-1251.
Попробуй в корне сайта в файле .htaccess прописать строку
Код: Выделить всё
AddDefaultCharset utf-8


Или более глобальное решение:
Идешь по пути
Z -> usr -> local -> apache -> conf -> httpd.conf:
В файле httpd.conf
находишь строку
Код: Выделить всё
AddDefaultCharset windows-1251
и меняешь её на
Код: Выделить всё
AddDefaultCharset utf-8

После этого Денвер нужно перезапустить.
Александр
 
Сообщения: 259
Зарегистрирован: 20 мар 2014, 17:05

Пред.

Вернуться в SQL