How to auto-load MySQL on startup on OSX 10.10 (Yosemite)

Saeid
A Frontend Developer Blog
1 min readOct 22, 2014

Problem
After upgrading to OSX Yosemite(10.10), MySQL stopped loading on startup.
The MySQL documentation says:

The Startup Item installation adds a variable MYSQLCOM=-YES- to the system configuration file /etc/hostconfig. If you want to disable the automatic startup of MySQL, change this variable to MYSQLCOM=-NO-.

So, I opened that file and it says:

# This file is going away

AFPSERVER=-NO-
AUTHSERVER=-NO-
TIMESYNC=-NO-
QTSSERVER=-NO-
MYSQLCOM=-YES-

As OSX mentioned this file is going away.

Solution
You need to create a Property List file (.plist) to start MySQL automatically on system startup.
First, create a new property list file:

sudo vim /Library/LaunchDaemons/com.mysql.mysql.plist

Add the following lines to it:

KeepAlive

Label
com.mysql.mysqld
ProgramArguments

/usr/local/mysql/bin/mysqld_safe
--user=mysql

Then update permissions and add it to launchctl:

sudo chown root:wheel /Library/LaunchDaemons/com.mysql.mysql.plist
sudo chmod 644 /Library/LaunchDaemons/com.mysql.mysql.plist
sudo launchctl load -w /Library/LaunchDaemons/com.mysql.mysql.plist

That’s it. Now the MySQL service will be started on OS X startup.

--

--

Saeid
A Frontend Developer Blog

Tech Lead Engineer 💻☕️ Creating magic in the digital realm 🌟✨