Я пытаюсь подключиться к серверу mysql на локальном хосте через скрипт php:
$mysql = mysql_connect('localhost', 'root', 'mysecret');
но я всегда получаю сообщение:
mysql_connect (): [2002] Es konnte keine Verbindung hergestellt werden, da der Zielcomput (пытается подключиться через tcp: // localhost: 3306)
Я думаю, что перевод этого немецкого сообщения:
mysql_connect (): 2002 Нет такого файла или каталога (пытается подключиться через tcp: // localhost: 3306)
Я могу использовать phpMyAdmin с этими учетными данными - поэтому они верны и сервер mysql работает в целом. При запуске клиента MySql из консоли у меня нет проблем:
mysql -u root -p
Введите пароль:
Добро пожаловать на монитор MySQL. Команды заканчиваются на; или \ g.
Ваш идентификатор соединения MySQL 86
Версия сервера: 5.0.51a-24 + lenny5 (Debian)
Введите 'help;' или '\ h' за помощь. Введите '\ c', чтобы очистить буфер.
mysql> quit
Bye
Подключение к localhost через порт по умолчанию (3306) через telnet работает, но я теряю соединение каждый раз:
telnet localhost 3306 Попытка
127.0.0.1 ...
Подключено к локальному хосту.
Экранирующий символ - «^]».
5.0.51a-24 + lenny5`w'V \ MJmg, <42; rMkQ3IW [Соединение закрыто сторонним хостом. </p>
Как объясняет мне руководство, я думаю, что это запасной вариант для сокета, если используется localhost. Я не могу найти mysql.sock в моем debian lenny - поэтому я не могу указать mysql.default_socket на этот путь.
Может быть, я не на правильном пути - было бы неплохо, если бы вы могли определить мне решение.