Не удается найти mysql.sock - PullRequest
       43

Не удается найти mysql.sock

74 голосов
/ 14 апреля 2009

Мне просто пришлось переустановить mysql, и у меня возникла проблема с его запуском. Он не может найти сокет (mysql.sock). Проблема в том, что я тоже не могу. В моем терминале Mac OS X 10.4 я набираю: locate mysql.sock и получаю обратно /private/tmp/mysql.sock. Имеет смысл, что файл сокета существует в этом месте, но на самом деле его нет.

  1. Как найти файл сокета?

  2. Если locate возвращает ложное местоположение, у него должна быть какая-то память и, возможно, индексы. Как я могу обновить этот индекс?

Ответы [ 14 ]

0 голосов
/ 15 сентября 2016

Я получаю ту же ошибку в Mac OS X 10.11.6:

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

После долгих мучений и поиска советов здесь и в связанных вопросах, ни один из которых, казалось, не решал проблему, я вернулся и удалил установленные папки и просто сделал brew install mysql.

По-прежнему выдает ту же ошибку с большинством команд, но это работает:

/usr/local/bin/mysqld

и возвращает:

/ usr / local / bin / mysqld: готов к подключению.

Версия: сокет '5.7.12': порт /tmp/mysql.sock: 3306 Homebrew

0 голосов
/ 23 июля 2016

(Q1) Как найти файл сокета?

Расположение файла сокета по умолчанию - /tmp/mysql.sock, чтобы найти файл сокета для вашей системы, используйте это.

mysqladmin variables | grep socket

Если вы только что установили MySql, файл mysql.sock не будет создан, пока сервер не будет запущен. Используйте эту команду для запуска.

sudo launchctl load -F /Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

При запросе пароля вы можете передать имя пользователя root или другое имя пользователя, подобное этому. Терминал запросит у вас пароль.

mysqladmin --user root --password variables | grep socket

(Q2) Как я могу обновить указатель местоположения

Обновите базу данных locate этой командой.

sudo /usr/libexec/locate.updatedb
0 голосов
/ 10 марта 2012

Чтобы обновить базу данных локации, я запустил

/usr/libexec/locate.updatedb
0 голосов
/ 14 апреля 2009

Не могу помочь с вопросом № 1, но для обновления файловой базы данных locate запустите:

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