現象

  • MAMP PRO 起動後に MySQL を起動できずハングアップする
  • 上記の状態だと、アプリケーション側からはログを見ることしかできない

原因

Marverics でのセキュリティ強化により、権限の問題で /etc/hosts をサードパーティーアプリケーションが書き換えられなくなっているためのようです。

やるべきこと

  • MAMP PRO を最新(2.2)にアップデート
  • Keychain Access で署名を発行する
  • codesign コマンドで MAMP PRO に署名し、編集許可を与える

電子署名を作成する

  • Keychain Access を起動する
  • Menu(Keychain Access) > Certificate Assistant > Create a Certificate…
  • 必要情報を入力して、署名を作成
  • Name => CalmTech(ここは任意)
  • Identity Type => Self Signed Root
  • Certificate Type => Code Signing

Keychain Access で電子署名を作成後

MAMP PRO に適用する

上記で発行した電子署名を MAMP PRO に適用します。ターミナルを起動して、以下のコマンドを実行します。
codesign -s “Your Name(今回の場合は、CalmTech)” /Applications/MAMP\ Pro/MAMP\ Pro.app

適用されたかどかは、以下のコマンドで確認できます。

codesign -v /Applications/MAMP\ PRO/MAMP\ PRO.app -v

MAMP PRO を再起動します。私の場合は、マシンも再起動してみました。

調査の過程で試したこと

デフォルトでインストールされる Apache を停止

Marvericks にアップグレードすると、Apache がインストールされるため MAMP Pro の Apace を起動できないというケースも散見されています。この場合は、以下のコマンドで Apache を停止することで解決。今後も使わないのであれば、自動起動からも削除してしまうと良いと思います。

sudo apachectl stop
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

参考