Mysql проблема: нет mysql.sock - PullRequest
3 голосов
/ 03 апреля 2011

Вчера я работал, используя MySQL, установленный на моем компьютере.
Я скачал xampp, поэтому я изменил в my.cnf файле путь к сокету:

 /opt/lampp/var/mysql/mysql.sock  

Этот файл был простотам.Сегодня я хотел продолжить работу над ним и обнаружил, что этого файла больше нет, поэтому при запуске сервера mysql я получаю следующую ошибку:

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

Вот несколько тестов, которые я сделал:

mujeresponja@ubuntu:~$ ps -fea | grep mysqld
1000     15707 15615  0 16:28 pts/1    00:00:00 grep --color=auto mysqld
mujeresponja@ubuntu:~$ ps -fea | grep mysql 
1000     15709 15615  0 16:29 pts/1    00:00:00 grep --color=auto mysql

В качестве возможного решения я удалил xampp и переустановил его, а также новый сервер MySQL, на всякий случай.Во всяком случае, этого файла больше нет.

РЕДАКТИРОВАТЬ Там, где должен быть mysql.sock, вместо этого есть два файла mysql_upgrade_info (который содержит только 5.5.8) и другой двоичный файл с именем ubuntu.err:

mujeresponja@ubuntu:/opt/lampp/var/mysql$ sudo cat ubuntu.err 
110403 17:28:52 mysqld_safe Starting mysqld daemon with databases from /opt/lampp/var/mysql
110403 17:28:52 [Note] Plugin 'FEDERATED' is disabled.
/opt/lampp/sbin/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)
110403 17:28:52 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use InnoDB's own implementation
InnoDB: Compressed tables use zlib 1.2.3
110403 17:28:52  InnoDB: Initializing buffer pool, size = 16.0M
110403 17:28:52  InnoDB: Completed initialization of buffer pool
110403 17:28:52  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name /opt/lampp/var/mysql/ibdata1
InnoDB: File operation call: 'create'.
InnoDB: Cannot continue operation.
110403 17:28:52 mysqld_safe mysqld from pid file /opt/lampp/var/mysql/ubuntu.pid ended
110403 17:29:22 mysqld_safe Starting mysqld daemon with databases from /opt/lampp/var/mysql
110403 17:29:22 [Note] Plugin 'FEDERATED' is disabled.
/opt/lampp/sbin/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)
110403 17:29:22 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use InnoDB's own implementation
InnoDB: Compressed tables use zlib 1.2.3
110403 17:29:22  InnoDB: Initializing buffer pool, size = 16.0M
110403 17:29:22  InnoDB: Completed initialization of buffer pool
110403 17:29:22  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name /opt/lampp/var/mysql/ibdata1
InnoDB: File operation call: 'create'.
InnoDB: Cannot continue operation.
110403 17:29:22 mysqld_safe mysqld from pid file /opt/lampp/var/mysql/ubuntu.pid ended

(Извините, я не знаю, как правильно показывать сообщения терминала) Кто-нибудь может мне помочь в этом?Заранее спасибо!

Ответы [ 5 ]

6 голосов
/ 03 апреля 2011

Вы можете найти фактический файл сокета и создать символическую ссылку, ведущую к нему, следующим образом:

# check path to socket from mysql settings  
mysqladmin | grep d.sock

# create a symbolic link
ln -s path_to_mysql_socket /opt/lampp/var/mysql/mysql.sock
1 голос
/ 12 апреля 2011

Я не нашел определенной причины для моей проблемы. Я просто удалил и переустановил, а затем все прошло хорошо.
Это не настоящее решение, но оно сработало. Удачи

1 голос
/ 03 апреля 2011

Хотя тест, который вы провели, немного искажен, я собираюсь предположить, что тест просто доказывает, что mysql не работает.

В зависимости от того, как настроил mysql, где-то должен быть файл запуска, обычно вокруг каталогов /etc/rc.*, и вам нужно будет запустить запуск rc.mysql (или это может быть S<nn>MySQL в каталог rc3.d, например

0 голосов
/ 14 августа 2015

У меня была такая же проблема с вами, и я нашел некоторую полезную информацию:

2015-08-14 10:51:17 30934 [ERROR] InnoDB: Unable to lock /opt/lampp/var/mysql/ibdata1, error: 11
2015-08-14 10:51:17 30934 [Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.

Итак, я перезагрузил компьютер и перезапустил XAMPP, и проблема была решена.

0 голосов
/ 03 мая 2014

Я попал в ту же ситуацию, когда сделал грант для *. * Другому пользователю.Mysql попытался предоставить разрешения для базы данных mysql, и это спровоцировало катастрофу: немедленно файл mysql.sock исчез.

это произошло с версией 5.6

...