У меня был успешно запущен 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 для нового пользователя и соответствующим образом измените файл конфигурации для второго пользователя.