Назад | Перейти на главную страницу

Ошибка Ubuntu 2002 «Невозможно подключиться к локальному серверу MySql через сокет…»

Я пытаюсь получить доступ к MySql в своей системе Ubuntu 10.04 LTS (lucid). Я знаю, что для этой ошибки есть много результатов, но, похоже, ни один из них мне не помогает. Я новичок в Linux, поэтому может потребоваться объяснение любой помощи.

При беге

mysql -u root -p

в командной строке я получаю сообщение об ошибке

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13)

Файл sock определенно существует; Бег

sudo ls -la /var/lib/mysql

включает строку

-rwxrwxr-- 1 mysql mysql 0 2011-11-03 19.05 mysql.sock

и запуск ls в родительском каталоге выглядит так

sudo ls -la /var/lib
drwxr-xr-- 5 mysql mysql 4096 2011-11-03 18.14 mysql

Я думаю, что MySql запущен;

sudo service mysql start

приводит к

mysql start/running

И файл my.cnf (расположенный в / etc / mysql /) включает строку

socket = /var/lib/mysql/mysql.sock

в разделе [mysqld].

Приветствуются любые указатели. Этот сайт работает, и, поскольку на нем размещена установка WordPress, невозможность доступа к MySql полностью нарушает работу сайта!

РЕДАКТИРОВАТЬ

Вывод из комментария;

ps -ef | grep mysql
mysql     1869     1  0 20:15 ?        00:00:00 /usr/sbin/mysqld
pete      1953  1713  0 20:36 pts/0    00:00:00 grep --color=auto mysql

mysql.sock НЕ является файлом сокета, это стандартный файл размером 0 байт.

Я бы (1) завершил работу mysql, (2) удалил файл mysql.sock, а затем (3) перезапустил mysql, который должным образом создаст файл сокета. При выполнении ls -l mysql.sock вы должны увидеть файл сокета, выглядящий следующим образом.

 srwxrwxrwx 1 mysql mysql            0 2011-10-06 15:25 mysql.sock

mysqld должен иметь файл сокета где-то в /var/run. В моей системе debian это /var/run/mysqld/mysqld.sock.

/var/lib/mysql - это каталог фактической базы данных, а не информация о времени выполнения.