Почему «localhost» не работает в качестве хоста MySQL, а «MyPCName» работает? - PullRequest
1 голос
/ 11 марта 2012

Я пытаюсь подключиться к MySQL из PHP (WordPress) в Windows / IIS 7.5, и вот что происходит:

define('DB_HOST', 'DevPC');        // -> works
define('DB_HOST', 'localhost');    // -> connection error

Странно, что на другой машине (Windows Server + IIS 7.5) localhost работает просто отлично. Что может быть причиной этого? Некоторые настройки PHP? Настройки MySQL?

Ответы [ 3 ]

3 голосов
/ 11 марта 2012

В Unix программы MySQL обрабатывают имя хоста localhost специально, таким образом, который, вероятно, отличается от того, что вы ожидаете по сравнению с другими сетевыми программами. Для подключений к localhost программы MySQL пытаются подключиться к локальному серверу с помощью файла сокета Unix. Это происходит, даже если для указания номера порта указана опция --port или -P.

Вместо localhost используйте 127.0.0.1.

2 голосов
/ 11 марта 2012

Вы должны дать нам сообщение об ошибке соединения. Вы уверены, что это не проблема доступа пользователя? Помните, что user@DevPC не совпадает с user@localhost при подключении к mysql. Даже если оба имени хоста преобразуются в один и тот же IP-адрес.

0 голосов
/ 11 марта 2012

В окнах вы можете проверить

c:\windows\system32\drivers\etc\hosts

, чтобы узнать, есть ли строка

127.0.0.1

localhost.

/etc/resolv.conf in linux
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...