I was setting up my local PHP/MySQL development environment on my local MacBook Pro to mirror our work development setup.
I ran into the following error:
1 2 3 4 |
|
I have fixed this issue in the past on a previous Leopard install, so I thought it was the perfect candidate for a blog post.
Customise php.ini file to use custom MySQL socket
If you have made manual customisations to your php config file already, skip this part; otherwise run the following in Terminal.app:
sudo cp /etc/php.ini.default /etc/php.ini
Next, open Sequel Pro and connect to the mysql server on your local Mac. If you don’t know how to do this, take a look at Getting Connected on the Sequel Pro documentation page.
Then, choose _Database > Show Server Variables… _
Scroll down through the list of variables until you get to socket.
Open up /etc/php.ini in Textmate or Coda and scroll down the where it says:
; Default socket name for local MySQL connects. If empty, uses the built-in
; MySQL defaults. mysql.default_socket =
Change the mysql.default_socket line to read:
mysql.default_socket = /tmp/mysql.sock
Restart Web Sharing Service (Apache)
Now, restart your Web Sharing service by going to > System Preferences…
Choose Sharing from the System Preferences page.
On the sharing pane, uncheck Web Sharing, wait a second for it to do its thing, then recheck it. If it was already unchecked, you will just need to choose the checkbox once.
Now, just reload your php page in Safari, and it should hopefully just work. Your app should now be connecting to the local MySQL server on your Mac. Enjoy!