Upgrade MySQL 5.5 to 5.6 on OS X Mavericks

I needed to upgrade MySQL from 5.5.x to 5.6.x on my OS X server running OS X Mavericks (10.9) and I found a site that basically made it super painless. Nothing jumped out on my from Google regarding Mavericks, so this is really for that random person like me who was unsure how it should work.

First, go download the 64-bit DMG of MySQL from here. Don’t worry that it says 10.7, it will work just fine with 10.9.

Then go here and read this page … I’ll wait, but don’t follow all the steps until you read my next part.

While performing the steps above, you’ll reach a step that reads:

/usr/local/mysql/bin/mysql_upgrade

At this step, instead of the above, try this instead:

/usr/local/mysql/bin/mysql_upgrade -u root -p

This will prompt you for your root password, but it will also allow the upgrade script to actually run. Otherwise, the directions were perfect and you should really have no problem. If for some reason you don’t have root access to MySQL … you’ll probably want to ask someone who does.

iStat Server and opening port 5109 on OS X Mavericks

After upgrading to OS X Mavericks (10.9), iStat on my iPhone was no longer able to connect to iStat Server on Mavericks. I had vaguely recalled seeing the OS X Server installer tell me that ipfw should be disabled, so I disabled it. I didn’t really think of it at the time, but I had a firewall rule set to allow TCP port 5109 be opened for iStat Server … because simply adding it via the Firewall settings is System Preferences did absolutely nothing … for some reason.

So I recalled the installer mentioning pf and told me to use pfctl. That took me on a journey the OS X man page regarding pfctl and about an hour later I finally figured out how to make it all work … and here it is:

sudo vim /etc/pf.conf

Add this line to the config file (after the com.apple anchor is fine) where en0 is your ethernet adapter and port 5109 is the port you’re using in iStat Server:

pass in on en0 proto tcp from any to any port 5109

This allows TCP data on port 5109 to pass into your machine via en0. This allows it from any IP address, but you could have changed the first mention of “any” to an IP address in order to only allow from a single IP address.

If you aren’t using a wired connection, you can change en0 to en1, or if you’re uncertain which adapter you’re using, run the following command to see which is active on your setup, noting which has a status of “active”:

ifconfig

This should yield something like the following. Note how en0 is “active”.

en0: flags=[redacted]
	options=[redacted]
	ether [redacted]
	inet6 [redacted]
	inet [redacted]
	nd6 options=[redacted]
	media: [redacted]
	status: active
en1: flags=[redacted]
	ether [redacted]
	nd6 options=[redacted]
	media: [redacted]
	status: inactive

Save the config file and run the following to reload the config file, and verify using verbose:

sudo pfctl -vnf pf.conf

I also ran this, just in case:

sudo pfctl -Rf pf.conf

That’s all I needed and I was able to make my way into my machine. But, it wasn’t until I turned off SSL that I was actually able to connect to iStat Server. I’m hoping SSL is remedied soon! SSL now works once again!