Now Reading
SOLVED : What to do if the MAMP app fails to start MySQL server?

SOLVED : What to do if the MAMP app fails to start MySQL server?

On my macOS devices I use MAMP app by appsolute GmbH for local web development. So far, this is the perfect app for me to have a local server environment. But sometimes there are problems such as the following error message when I try to start the servers:

MySQL wasn't able to start. Please check log for more information

What causes this problem

The reasons for the problems with running MySQL server can be different in different cases. The most common problems with MySQL server not starting are the following:

  1. Another mysql service running on the same port.
  2. The mysql.sock.lock file was not deleted.
  3. The current user not having permissions to the file.
  4. The log file is corrupted.
  5. The database is corrupted.

To find out the exact cause of the problem, you need to look in the MySQL log file located in /Applications/MAMP/logs/ or /Library/Application Support/appsolute/MAMP/logs/.

Most often, the problems listed above occur after an incorrect shutdown of the MAMP app. For example, when your computer was hard powered off, or you force the MAMP app to quit.

How to solve it

I have encountered this problem on many occasions, and in most cases the following solutions work:

  1. Kill other MySQL processes running. (Solution №1)
  2. Rename or delete the MySQL log files. (Solution №2)
  3. Delete the mysql.sock.lock file. (Solution №3)
 

Solution # 1


In this solution we will use the Activity Monitor app. You do not need to download and install anything, because it is already built into every macOS.

  1. Quit MAMP app.

  2. Launch the Activity Monitor app from the Utilities folder of your Applications folder, or use Spotlight to find it.

  3. Type mysqld into the search field on the top right.

  4. Quit every process you find after your search.

  5. Launch MAMP and click the Start Servers button.

 

 

Solution # 2


In this solution we will use the Finder. You do not need to download and install anything, because it is already built into every macOS.

  1. Quit MAMP app.

  2. In the Finder, go to the folder Applications → MAMP → db → mysql56.

    Note! The path to this folder may be different on your system. Try the following variants:
    1) /Applications/MAMP/db/mysql56/
    2) /Library/Application Support/appsolute/MAMP/db/mysql56

  3. Rename the two log files ib_logfile0 and ib_logfile1 to ib_logfile0_bak and ib_logfile1_bak. Both of these files will be automatically rebuilt by MAMP on the next launch.

    Note! Don’t delete these two files as you may need to return to them.

    See Also

  4. Launch MAMP and click the Start Servers button.
 

Solution # 3


In this solution we will use the Finder. You do not need to download and install anything, because it is already built into every macOS.

  1. Quit MAMP app.

  2. In the Finder, go to the folder Applications → MAMP → tmp → mysql.

    Note! The path to this folder may be different on your system. Try the following variants:
    1) /Applications/MAMP/tmp/mysql/
    2) /Library/Application Support/appsolute/MAMP/tmp/mysql

  3. Delete the lock file mysql.sock.lock. This file is a plain text file with a PID in it. This file will be automatically rebuilt by MAMP on the next launch.

  4. Launch MAMP and click the Start Servers button. 

 


The Ultimate Fix

So sometimes, when starting MAMP server, the MySQL service fails to start. This means that any application that relies on a database connection will not work. After searching the web for a solution none of the popular posts could help me fix the problem. I then stumbled on a short post on stackoverflow.com that pointed me in the right direction.

To fix the issue (in my instance) was quite simple. Here are the steps to follow:

  1. Locate and open the my.cnf file. It should be located here: MAMP/conf/my.cnf
  2. Locate the line that says: innodb_force_recovery = 0 and change it to innodb_force_recovery = 1
  3. Save and close the file
  4. Quit and restart MAMP and Restart all services

That’s it. The MySQL service should start without a problem and the work can go on. I hope this has helped you in some way. Good luck.

Conclusion

That’s it, you’re done. Now the MAMP should start the MySql server without errors. So simple isn’t it?

If you are having trouble fixing this problem with the instructions above, but are being able to solve this problem with any another method please describe it in the comment section below. Thanks!

© 2020 GREWAL INC. ALL RIGHTS RESERVED.