We also specifically set the MySQL installer to not even attempt to install the Startup Items. This allows MySQL to start on boot, and still retains all use of the MySQL Preference pane. What we did in our latest installer is created a Launchd plist that looks for networking to start up, and when ready, use the MySQL support script to start MySQL. There is a supporting script from MySQL that handles the start/stop/status functions for the preference pane. You can easily write a Launchd plist file to auto-start MySQL, but the nice MySQL preference pane that allows a user to turn MySQL off and on again would not function. Yosemite will not autostart via a StartupItem. This setup has been out of date since the OS X 10.4 days. MySQL had been using a StartupItem configuration to allow an end user to easily set MySQL to start on boot. There were long outstanding bugs that were resolved and deprecated commands/functions that were finally removed. The upgrade to Yosemite did spring cleaning to OS X. Then Yosemite was released recently and our installer had a few issues. We took the installer one step forward by adding features for installing a modified MySQL configuration file, and Sequel Pro (a GUI front end for MySQL). The default install has root enabled without a password. Our installer took care of those items as well as set the root password randomly.
MySQL had a GUI installer for OS X that worked well, but was missing a few things that made it ready to work with Apache/PHP out of the box.
Which coincidentally is not long after Oracle acquired Sun which included MySQL. With the move to Server.app, Apple removed MySQL. In OS X 10.6 and prior, MySQL was included with the “Server” version of the OS. A few years ago we started writing scripts that help install MySQL on OS X.