あるユーザーでMAMPを正常に実行できましたが、2人の開発者間で物事を分離するために新しいユーザーを作成したため、かんしゃくが発生しました。私は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データがアクセスしようとしているユーザーとは異なるユーザーによって所有されていることです。 chown
新しいユーザーへのMySQLデータディレクトリ、または(今後も複数のユーザーがMySQLを実行できるようにしたい場合は)新しいユーザー用に別のMySQLデータディレクトリを作成し、構成ファイルを変更します2番目のユーザーのために適切に。
この問題は、現在のユーザーがファイルへのアクセス許可を持っていないことに関連しています./mysql/Host.frm
(/Applications/MAMP/db/mysql/mysql/Host.frm
)
おそらく、別のユーザーによってインストールされ、すべてのファイルがそのユーザーによって所有されており、書き込み権限はファイルの所有者に対してのみ設定されているためです。
通常のMAMPインストールでは、所有権はolduserおよび管理者グループ(olduser:admin)に設定され、ユーザーの読み取り/書き込み権限のみが設定される可能性があります。 newuserもadminグループに含まれている場合は、グループの読み取りと書き込みをMAMPパス全体に追加するだけです。
Sudo chmod -R ug+rw /Applications/MAMP
私の場合のように、会社のラップトップが1人のユーザーから別のユーザーに渡された場合(つまり、olduserがそれを使用しなくなった場合)、すべてのファイルの所有権も変更することをお勧めします。
Sudo chown -R newuser:admin /Applications/MAMP
補足:
これは古いスレッドだと知っていますが、同じ問題が発生したのでポップアップしたので、自分の問題に完全な解決策を追加すると思いました。また、wombleの回答は、エラーの原因に対する有益な洞察を提供しました。