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

Не удается создать файл PID на сервере MySQL, в разрешении отказано

Сервер MySQL не запускается и выдает следующую ошибку:

/ usr / local / mysql / bin / mysqld: невозможно создать / записать в файл '/usr/local/mysql/data/James-Barnhills-Mac-Pro.local.pid' (код ошибки: 13)
Не удается запустить сервер: невозможно создать файл PID: отказано в разрешении

Все разрешения устанавливаются рекурсивно как:

lrwxr-xr-x 1 _mysql wheel 27 Nov 22 09:25 mysql -> mysql-5.5.18-osx10.6-x86_64

но не запускается. Несколько раз безуспешно пытался переустановить.

Я работаю как root в Mac OS, а MySQL имеет разрешения на чтение, запись и выполнение для папки «data».

Ошибки разрешения возникают из-за того, что у вас есть каталог, установленный на Octal Permission 0751. Это означает, что пользователь может читать, писать и выполнять, но все остальные не могут. Поскольку вы не являетесь пользователем _mysql, у вас нет разрешений. Вы можете сделать две вещи, чтобы исправить это.

  • Вы можете запустить его, поместив sudo перед командой, которую вы используете для запуска службы mysqld.

    запуск службы sudo mysqld

  • Вы можете установить разрешения рекурсивно на 0771. Это позволит группе wheel (администратор) писать в каталог.

Дело не в том, что вы запускаете mysql от имени пользователя root, а фактически он запускается от имени этого пользователя. Проверьте /etc/my.cnf и сравните, совпадает ли владелец каталога данных mysql с указанным параметром user = mysql_owner.

Если это, например, "mysql", то root переключается на этого пользователя (за кулисами) перед запуском mysql.