his issue came to me after i got “Can’t connect to local MySQL server through socket ‘/var/mysql/mysql.sock’” on a mysql connection on php on a fresh installed mac – php connect’s correctly to 127.0.0.1 , but does not connect to localhost .
On a mac the default mysql socket is ‘/private/tmp/mysql.sock‘ and not ‘/var/mysql/mysql.sock’, you can confirm it by using $ locate mysql.sock on a Terminal.
So basically you have to change the php default connection socket to mysql to ‘/private/tmp/mysql.sock‘ . To do this you have to edit your php.ini – probably located at ‘/private/etc/php.ini‘ – via:
* $ sudo nano /private/etc/php.ini
* ctrl+w (where is) “mysql.default_socket“
* alter to “mysql.default_socket = /private/tmp/mysql.sock”
* crtl+x followed by y and enter to save php.ini
* $ sudo httpd -k restart to restart Apache 2
Retry connecting to mysql localhost on php – should be working :)
Update:
if you use mysqli you also must set “mysqli.default_socket = /private/tmp/mysql.sock” on php.ini;
from: http://techtrouts.com/mac-mysql-does-not-connect-on-localhost-but-connects-on-127001/
No comments:
Post a Comment