В файле конфигурации mysql - my.cnf
проверьте параметр pid-file
и посмотрите, на что он указывает. Если его там нет, установите его вручную на -
pid-file = /var/run/mysqld/mysqld.pid
Создайте каталог / var / run / mysqld /
и дайте ему соответствующие разрешения -
mkdir /var/run/mysqld
touch /var/run/mysqld/mysqld.pid
chown -R mysql:mysql /var/run/mysqld
Этот вопрос немного устарел, но я подумал, что опубликую, как я решил эту проблему, когда это случилось со мной на моем Mac ( OS X El Capitan 10.11.4).
Чтобы убедиться, проверьте статус
mysql.server status
ОШИБКА! MySQL работает, но файл PID не может быть найден
Найти все запущенные процессы mysql
ps aux | grep mysql
Он перечислит все процессы, использующие mysql (включая команду, которую вы только что выполнили)
Отключите все идентификаторы mysql
sudo kill <pid1> <pid2> <pid3> ...
Это должно убить все процессы mysql.
Теперь попробуйте запустить mysql.
mysql.server start
Запуск MySQL . УСПЕХА!
Надеюсь, это кому-то поможет!
Основная проблема, вероятно, заключается в том, что ваше имя хоста изменяется, и если вы не укажете pid-файл в my.cnf, он будет использовать .pid в качестве файла. Если у меня дома есть MacBook, я увижу одно имя хоста, но когда он проснется в корпоративной сети, он увидит то же имя с ".local" в конце.
У меня тоже была эта проблема... В моем случае я использовал версию Generic MySql, запускаю mysql как root
пользователь:
/path/to/mysql/support-files/mysql.server start --user=root