По какой-то причине mysql в OS X получает неправильное расположение требуемого файла сокета, но, к счастью, решение так же просто, как установка символической ссылки.
Возможно, у вас есть сокет (отображается как файл нулевой длины) как /tmp/mysql.sock
или /var/mysql/mysql.sock
, но одно или несколько приложений ищут его в другом месте. Узнайте с помощью этой команды:
ls -l /tmp/mysql.sock /var/mysql/mysql.sock
Вместо того, чтобы перемещать сокет, редактировать файлы конфигурации и не забывать хранить отредактированные файлы локально и вдали от серверов, где пути указаны правильно, просто создайте символическую ссылку, чтобы ваш Mac нашел нужный сокет, даже если он просматривает не то место!
Если у вас есть /tmp/mysql.sock
, но нет /var/mysql/mysql.sock
, тогда ...
cd /var
sudo mkdir mysql
sudo chmod 755 mysql
cd mysql
sudo ln -s /tmp/mysql.sock mysql.sock
Если у вас есть /var/mysql/mysql.sock
, но нет /tmp/mysql.sock
, тогда ...
cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock
Для создания каталога и ссылки вам потребуются разрешения, поэтому при необходимости просто добавьте префикс вышеупомянутых команд к sudo.