Forum Webscript.Ru

Общие => Базы данных => Тема начата: biblos от 31 Января 2003, 16:14:58

Название: Can\'t connect to MySQL through socket
Отправлено: biblos от 31 Января 2003, 16:14:58
Что может вызвать ошибку и как с етим бороться?

Warning: Can\'t connect to local MySQL server through socket
\'/var/lib/mysql/mysql.sock\'

PS:
MySQL server был запущен .
Ошибка время от времени пропадала и все работало нормально.


Может ли недостаток места на диске вызвать подобную ошибку?
Название: Can\'t connect to MySQL through socket
Отправлено: ThE0ReTiC от 31 Января 2003, 18:37:23
В принципе да.
А что, сильный недостаток?
В принципе mysql.sock обычно кладется в /temp
Название: Can\'t connect to MySQL through socket
Отправлено: biblos от 31 Января 2003, 19:15:10
а какая разница где он? сервер то работает нормально, то без видимой причины видает ошипку, потом через некоторое время опять нормально работает.

полная непонятка.

может кто просветит , что может вызывать такие ошибки?
Название: Can\'t connect to MySQL through socket
Отправлено: fidget от 31 Января 2003, 20:08:51
> сервер то работает нормально, то без видимой причины видает ошипку, потом через некоторое время опять нормально работает.

Эту ошибку выдает не сервер, а  клиент.

Проверь логи MySQL сервера не падал ли он.
Название: Can\'t connect to MySQL through socket
Отправлено: biblos от 31 Января 2003, 20:11:02
нет не падал. кроме того, как он при падении может сам подняться?
Название: Can\'t connect to MySQL through socket
Отправлено: fidget от 31 Января 2003, 21:28:42
> нет не падал.

такая ошибка возникает когда
1. не запущен сервер
2. сокет файл лежит не там где его ищут
3. кто-то удалил сокет файл

если у тебя все время все коннектиться нормально, а потом начинает возникать такая ошибка и сервер при этом запущен, то проверь есть ли сокет файл в /var/lib/mysql/.
и есть ли сокет файл где либо вообще.


> кроме того, как он при падении может сам подняться?

если сервер запущен через safe_mysqld, то он в цикле запускает mysqld :)
Название: Can\'t connect to MySQL through socket
Отправлено: biblos от 31 Января 2003, 21:44:36
хм,


> 1. не запущен сервер

он был запущен и работал.


> 2. сокет файл лежит не там где его ищут

хм. незнаю.  врядли. никто ничего не меняет. а доступ то изчезает, то появляеться

> 3. кто-то удалил сокет файл

тоже маловероятно

кроме того если верить логам то сервер не перегружаеться



еще в логах нашел такое:

Aborted connection 340 to db: \'news\' user: \'news\' host: `localh
ost\' (Got an error writing communication packets)


несовсем понял что ето значит.
Название: Can\'t connect to MySQL through socket
Отправлено: fidget от 31 Января 2003, 21:52:22
> > 2. сокет файл лежит не там где его ищут

> хм. незнаю. врядли. никто ничего не меняет. а доступ то изчезает, то появляеться

а с правами на сам сокет файл никто не играется там у вас?

> > 3. кто-то удалил сокет файл

> тоже маловероятно
> кроме того если верить логам то сервер не перегружаеться

если ты удалишь сокет файл, то сервер перегружаться не будет :) просто не будет сокет файла.

> Got an error writing communication packets

читать тут
http://www.mysql.com/documentation/mysql/bychapter/manual_Problems.html#Communication_errors
Название: Can\'t connect to MySQL through socket
Отправлено: biblos от 31 Января 2003, 22:10:13
> The client program did not call mysql_close() before exit

а я где-то читал, что совсем необезательно при окончании роботы скрипта вызывать данную функцию?