MySQL ERROR! The server quit without updating PID file
ERROR! The server quit without updating PID file
ERROR! MySQL server PID file could not be found!
Getting these MySQL errors on your database server on macOS, there seems to be lots of solutions about how to fix this, Google hell, this more than likely happens if mysql is running and the OS is updated like from one macOS to another.
The mysql.socket is no longer visible in /tmp eventhough mysql thinks it is. The .pid file in the mysql data folder is gone and mysql just wont behave without it.
So possible solutions are, first up try a straight restart:
/usr/local/mysql/support-files/mysql.server restart
If that doesn’t fix
Remove /etc/my.cnf or just back it up for now and restart:
sudo mv /etc/my.cnf /etc/my.cnf.bak
Another solution is remove any .err files in the data folder or create missing .pid ones that the error message warns:
neilg@[/usr/local/mysql/data]: sudo /usr/local/mysql/support-files/mysql.server start Starting MySQL . ERROR! The server quit without updating PID file (/usr/local/mysql/data/neils-iMac.local.pid).
So you could remove the .err files like so:
rm *.err /usr/local/mysql/data/
Not too sure about recreating the .pid file, i tried this and it just removed itself!
But these may not solve the issue, I found a clean install of the latest mysql will address the issue by installing all components from the dmg.
Download the latest mysql and pick the Mac OS X 10.7 (x86, 64-bit), DMG Archive version.
Install all components and restart, now you should have mysql server running again but now you will need to migrate the old data to the new. First up make sure mysql is not running either from System Prefs or the Terminal.
sudo /usr/local/mysql/support-files/mysql.server stop
or
Migrate Databases
The key directory from the previous mysql instance that needs to be copied is :
/usr/local/mysql-5.5.13-osx10.6-x86_64/data
So in this instance the previous mysql version was 5.5.13 – the steps are rename the new data directory and copy in the old one.
Change Name of newer data directory
sudo mv /usr/local/mysql-5.6.14-osx10.7-x86_64/data /usr/local/mysql-5.6.14-osx10.7-x86_64/dataold
Copy Old Databases into new location
sudo cp -rf /usr/local/mysql-5.5.13-osx10.6-x86_64/data /usr/local/mysql-5.6.10-osx10.7-x86_64/
Start Mysql
sudo /usr/local/mysql/support-files/mysql.server start
That should fix the issue