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

MySQL не запускается на сервере MAMP

У меня был успешно запущен MAMP у одного из пользователей, но поскольку я создал нового пользователя, чтобы разделить вещи между двумя разработчиками, это привело к истерике. Я новичок в самом Mac, но мне удалось найти пользователей с аналогичными проблемами.

У моего старого пользователя Apache не запускается, а у нового пользователя MySql не запускается. Я также убедился, что никакой другой экземпляр mysqld не запущен, но он не запускает MySql в моей системе. Я уже несколько раз перезагружал систему, даже проверял / etc для файла my.cnf, но внутри / etc нет my.cnf

Не удалось найти форму для запроса поддержки на mamp.info, и сейчас мне отчаянно не хватает моей Ubuntu :-(

Вот журнал mysql:

110803 16:16:26 [Note] Plugin 'FEDERATED' is disabled.
110803 16:16:26 [Note] Plugin 'ndbcluster' is disabled.
/Applications/MAMP/Library/libexec/mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)
110803 16:16:26 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
110803 16:16:26  InnoDB: Started; log sequence number 0 396676924
110803 16:16:26 [ERROR] /Applications/MAMP/Library/libexec/mysqld: Can't find file: './mysql/host.frm' (errno: 13)
110803 16:16:26 [ERROR] Fatal error: Can't open and lock privilege tables: Can't find file: './mysql/host.frm' (errno: 13)
110803 16:16:26 mysqld_safe mysqld from pid file /Applications/MAMP/tmp/mysql/mysql.pid ended

В чем может быть проблема?

Эта проблема связана с тем, что текущий пользователь не имеет прав доступа к файлу. ./mysql/host.frm (/Applications/MAMP/db/mysql/mysql/host.frm)

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

В типичной установке MAMP право собственности, вероятно, установлено на Olduser и группа администраторов (olduser: admin) с правами только на чтение и запись пользователей. Если новый пользователь также находится в группе администратора, тогда просто добавьте группу чтения и записи для всего пути MAMP:

sudo chmod -R ug+rw /Applications/MAMP

Если, как в моем случае, ноутбук компании был передан от одного пользователя другому (т.е. olduser больше не будет его использовать), то было бы неплохо также изменить владельца всех файлов:

sudo chown -R newuser:admin /Applications/MAMP

Примечание:

Я знаю, что это старый поток, но поскольку он появился сейчас, когда я столкнулся с той же проблемой, я решил, что добавлю полное решение своей проблемы. Также ответ womble дал полезную информацию о корне ошибки.

Проблема в том, что ваши данные MySQL принадлежат другому пользователю, чем тот, который пытается получить к ним доступ. chown ваш каталог данных MySQL для нового пользователя или, возможно (если вы хотите и дальше разрешить запуск MySQL нескольким людям в будущем), создайте отдельный каталог данных MySQL для нового пользователя и соответствующим образом измените файл конфигурации для второго пользователя.