Last night there were several brownouts, which may or may not affected how my laptop slept. A rare sleep disorder causes problems when waking up: Right after opening my machine, it spontaneously reboots rather than, er, staying awake. This occurred only once or twice in the past year, but when it did, MAMP passed away into a zombie state. I couldn’t stop the servers; nor could I start them! Its Dashboard widget just spun and spun and spun, and I couldn’t access my local WordPress or Zenphoto installations; nor could I access the MAMP start page or phpMyAdmin. Shutting down my MacBook Pro and restarting it didn’t help either. Time to research and document the problem. >:-)
It turns out that this is a known bug, and that it’s on the MAMP developer list to fix. Even better, there’s a workaround:
- Start the MAMP application (something I rarely do), located in
/Applications/MAMP/MAMP.app. The start page will open a new web browser page, but will fail to connect, which is expected since it’s in an unhappy state.
- Click the Preferences button.
- In the resulting Preferences sheet, don’t change anything. Just click the OK button.
- Results: The Apache and MySQL servers will stop and restart. Correctly, this time, rather than spinning infinitely. To make sure things are working, click the Open Start Page button; the MAMP start page should then load in a new browser page.
- If the Dashboard widget still continues to spin, just click its Stop Servers button, wait for the servers to stop completely, then click Start Servers.
I still use MAMP v1.7, but I’m guessing that the current version 1.7.1, released sometime late last year, also has this bug.
Before I applied the above workaround, I saw the following in the Console, while tracking
systemp.log as I (unsuccessfully) attempted to stop and restart via the MAMP Dashboard widget:
2/18/08 11:11:27 AM authexec executing /bin/sh
2/18/08 11:11:30 AM DashboardClient apache didn't stop -> kill
2/18/08 11:11:30 AM [0x0-0xb00b].com.apple.dock
2008-02-18 11:11:30.463 DashboardClient[141:10b] apache didn't stop -> kill
2/18/08 11:11:30 AM authexec executing /bin/kill
2/18/08 11:11:30 AM [0x0-0xb00b].com.apple.dock kill: 272: No such process
2/18/08 11:11:35 AM [0x0-0xb00b].com.apple.dock /Applications/MAMP/Library/bin/mysqladmin: connect to server at 'localhost' failed
2/18/08 11:11:35 AM [0x0-0xb00b].com.apple.dock error: 'Can't connect to local MySQL server through socket '/Applications/MAMP/tmp/mysql/mysql.sock' (61)'
2/18/08 11:11:35 AM [0x0-0xb00b].com.apple.dock Check that mysqld is running and that the socket: '/Applications/MAMP/tmp/mysql/mysql.sock' exists!
The message about failing to connect to localhost caught my attention, and searching for those terms in the MAMP forums yielded the workaround. After things got back into a happier working condition, I skimmed to find the message below, confirming that things (or, at least MySQL) are running:
Feb 18 11:49:36 Macintosh-2 [0x0-0x26026].com.living-e.MAMP: Starting mysqld daemon with databases from /Applications/MAMP/db/mysql
Sure enough, Apache, MySQL and PHP run fine now: I can use WordPress and Zenphoto again, as well as access phpMyAdmin.