Can't create PID file on MySQL server, permission denied

The MySQL server won't start and is reporting the following error:

/usr/local/mysql/bin/mysqld: Can't create/write to file '/usr/local/mysql/data/James-Barnhills-Mac-Pro.local.pid' (Errcode: 13)
Can't start server: can't create PID file: Permission denied

All the permissions are set recursively as:

lrwxr-xr-x 1 _mysql wheel 27 Nov 22 09:25 mysql -> mysql-5.5.18-osx10.6-x86_64

but it won't start. I've tried reinstalling several times to no avail.

I'm running as root on Mac OS, and MySQL has read, write, and execute permissions on the "data" folder.


Solution 1:

The permission errors are because you have the directory set to the Octal Permission 0751. This means the User can read write and execute but everyone else can't. Since you aren't the user _mysql you don't have permissions. You can do two things to fix this.

  • You could start it by putting sudo in front of the command you use to start the mysqld service.

    sudo service mysqld start

  • You could set the permissions recursively to 0771. This will allow the wheel (administrator) group to write to the directory.