I was ready to give up on trying to set up MySQL on a MacBook and revert to my trusty six year old, rapidly-falling-apart laptop, when I came across two articles (http://stackoverflow.com/questions/1293484/easiest-way-to-activate-php-and-mysql-on-mac-os-10-6-snow-leopard and http://maestric.com/doc/mac/apache_php_mysql_snow_leopard), which seem to have fixed my issues. All I needed to do in the end was change my socket locations.
What is particularly frustrating in all of this is that because the Mac requires a user called ‘mysql’, Apple saw fit to ship OSX with this account (it’s invisible, although you can test for it by trying to create a new account called ‘mysql’), but offers no further support for installation. Seems to me that if you’re going to go part of the way to make software that “just works” you should either make sure that it does work, or provide at least basic information as to how to get it to work. Leaving users with neither a working product nor a way to get the product working isn’t great.