MySQL

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

Sergej » 18 окт 2014, 22:41

Привет, Александр.
Поставил Денвер, и такая вот петрушка, вроде все установилось, но….
MySQL сервер не отвечает, ошибка 2002.
Sergej
 
Сообщения: 12
Зарегистрирован: 15 сен 2014, 21:44

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

Александр » 19 окт 2014, 13:20

Вообще, когда Денвер запускаешь, mysql сервер стартует?
Попробуй, отключив Антивирус и Брандмауэр запусти Денвер.
Для начала посмотри в диспетчере задач Windows, там должен быть процесс mysqld.exe
Если он там есть потом тебе нужно в командной строке Windows ввести:

Код: Выделить всё
telnet 127.0.0.1 3306


Должен быть какой-то ответ от MySQL сервера в виде строки с каким-то текстом (могут быть кракозябы) это значит, что сервер ответил.
Если же будет сообщение типа "Не у далось открыть подключение к этому узлу на порт 3306...." - значит не подключается.
Тогда пробуй команду:

Код: Выделить всё
telnet localhost 3306


Если она будет успешной, то возможно, проблема из серии настройки сети ipv6 и т. п. http://forum.dklab.ru/viewtopic.php?t=38843
Если не успешно, смотри кто слушает порт 3306
В командной строке Windows выполни:

Код: Выделить всё
netstat -an


(в выводе правой кнопкой мыши ищи 3306)
или более детальная:

Код: Выделить всё
netstat -ab


Ну и на всякий случай убедись, что порт MySQL в конфигурационном файле задан как 3306, также посмотри файл ошибок MySQL
Стандартный проводник Windows может не показывать эти файлы, тогда пользуйся каким-нибудь файловым менеджером.
Где у тебя расположены эти файлы, см. на форуме Денвера, обычно конфигурационный лежит в Z:\usr\local\mysql5\ , файл ошибок в Z:\usr\local\mysql5\data
http://www.denwer.ru/faq/other.html#h30-15
Александр
 
Сообщения: 252
Зарегистрирован: 20 мар 2014, 17:05

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

Sergej » 19 окт 2014, 14:43

В диспетчере такого процесса нет хотя изначально при загрузке денвер в командной строке пишет что-то вроде:

Подключение mysql

Готово.


Что касаемо порта 3306 я так понимаю это к нему относится

Код: Выделить всё
# The following options will be passed to all MySQL client.

[client]

port                  = 3306

socket                = /tmp/mysql5.sock

character-sets-dir    = /usr/local/mysql-5.5/share/charsets

# Кодировка консоли mysql.exe по умолчанию.

default-character-set = cp1251

# The MySQL server

[mysqld]


# Обработывать запросы ТОЛЬКО с локальной машины (повышает безопасность).

# Если вы хотите, чтобы MySQL-сервер был доступен из сети,

# уберите следующую ниже директиву.

bind-address = 127.0.0.1

port                       = 3306


Это в файле my.ini прописано

Файл с ошибками подкрепляю, погляди пожалуйста может чего увидишь
MySQL.err.txt
Лог ошибок MySQL
(13.62 Кб) Скачиваний: 766
Sergej
 
Сообщения: 12
Зарегистрирован: 15 сен 2014, 21:44

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

Александр » 19 окт 2014, 17:30

Смотри в сторону конфигурационного файла и затребуемых там ресурсов памяти.

Вот похоже что обрывает процесс:
InnoDB: Error: auto-extending data file .\ibdata1 is of a different size
InnoDB: 384 pages (rounded down to MB) than specified in the .cnf file:
InnoDB: initial 640 pages, max 0 (relevant if non-zero) pages!
141014 20:08:15 InnoDB: Could not open or create data files.
141014 20:08:15 InnoDB: If you tried to add new data files, and it failed here,
141014 20:08:15 InnoDB: you should now edit innodb_data_file_path in my.cnf back
141014 20:08:15 InnoDB: to what it was, and remove the new ibdata files InnoDB created
141014 20:08:15 InnoDB: in this failed attempt. InnoDB only wrote those files full of
141014 20:08:15 InnoDB: zeros, but did not yet use them in any way. But be careful: do not
141014 20:08:15 InnoDB: remove old data files which contain your precious data!
141014 20:08:15 [ERROR] Plugin 'InnoDB' init function returned error.
141014 20:08:15 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
141014 20:08:15 [ERROR] Unknown/unsupported storage engine: InnoDB
141014 20:08:15 [ERROR] Aborting


Пробей в Яндексе по этим ошибкам.
Вот, кажется наиболее простое (Дмитрий Кóтеров кстати, разработчик Денвера)
http://forum.dklab.ru/viewtopic.php?t=14113
http://forum.dklab.ru/viewtopic.php?p=72845#72845

Думаю примерно так: у MySQL есть разные движки для хранения данных, основные: MyISAM и InnoDB. InnoDB, кажется, в Денвере не используется.
В силу каких-то твоих особенностей (может ты раньше Mysql/Денвер устанавливал, но плохо удалил или еще бог знает что..), в общем, кажется этот InnoDB пытается создать дополнительное хранилище и натыкается на какое-то ограничение в конфигурации.
Тебе нужно почитать как в Денвере устроено конфигурирование MySQL (один конфигурационный файл или есть еще где-то, если в конфиге какие-то лимиты не прописаны, может они по умолчанию в MySQL идут).

Может потребуется удалить файл типа .\ibdata1 не знаю. Все удаления лучше делай в последюю очередь, даже лучше не удалять, наверное, а просто переименовывать.
Последний раз редактировалось Александр 24 ноя 2014, 14:42, всего редактировалось 1 раз.
Александр
 
Сообщения: 252
Зарегистрирован: 20 мар 2014, 17:05

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

Sergej » 20 окт 2014, 20:10

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

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

Sergej » 21 окт 2014, 19:46

Привет! Как всегда нужна твоя помощь, с денвером вроде разобрался, но вот досада при закачке файлов сайта на сервер возникают проблемы, судя по различным комментариям в инете это нормально, при возникновении каких любо проблем в самом phpadmyn отражаются какие именно необходимо решить вопросы, так все и шло изначально, но вдруг столкнулся с такой проблемой (#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''2014-08-' at line 1) и никак не могу найти толкового ответа, может подскажешь что это?
Sergej
 
Сообщения: 12
Зарегистрирован: 15 сен 2014, 21:44

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

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

Привет.
Т. е. ты хочешь залить на локальный mysql-сервер дамп, сделанный на хостинге? ты его случайно не открывал простым блокнотом и потом пересохранял?
Пришли мне на почту сам дамп что ли.
Чтобы сразу исключить и на будущее, почитай про BOM http://mywordpress.ru/support/viewtopic.php?id=2461
вот еще http://sqlinfo.ru/articles/info/15.html
Я тебе, кстати, писал когда-то, что стандартными windows редакторами не пользуйся т. к. там всякие "сюрпризы" могут быть, используй либо notepad++ либо notepad2
http://notepad-plus-plus.org
Александр
 
Сообщения: 252
Зарегистрирован: 20 мар 2014, 17:05

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

Sergej » 21 окт 2014, 21:26

Я его открывал и пересохранял но через notepad++
Sergej
 
Сообщения: 12
Зарегистрирован: 15 сен 2014, 21:44

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

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

Я смотрю, дамп имеет кодировку Windows-1251. Похоже, что при экспорте на хостинге в PhpMyAdmin или какая программа там еще, не знаю.. была выставлена кодировка Windows-1251 (синоним CP1251) а нужна UTF-8, насколько я понимаю..
И ты наверное пытаешься на Денвере залить через PhpMyAdmin этот файл как файл, имеющий кодировку UTF-8.
Примерно так, в общем, похоже на какую-то несогласованность в кодировках.

И еще, смотрю в дампе стоит тип ENGINE=InnoDB. Похоже хостер так настроил СУБД тип InnoDB и экспорт в Windows 1251.
Короче, в такой ситуации, думаю тебе пока не стоит заливать базу назад на хостинг...
Но для локальных экспериментов попробуй в Notepad++ перекодировать этот файл в UTF8 без BOM и поиском/заменой поменяй InnoDB на MyISAM.
Локально не страшно пробовать. На хостинг, опять повторяю, наверное лучше пока тебе не пытаться базу перезаливать, пока не разберешься что к чему.
Александр
 
Сообщения: 252
Зарегистрирован: 20 мар 2014, 17:05

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

Sergej » 21 окт 2014, 22:50

Понял буду пробовать
Sergej
 
Сообщения: 12
Зарегистрирован: 15 сен 2014, 21:44

След.

Вернуться в SQL