问题
I was working on MAMP phpMyAdmin and everything worked well until i query an ALTER TABLE
statement from SQL tab. Operation was too long to end so i decided to refresh my page. From this time, i cannot reach phpMyAdmin anymore and i always have this message :
#2002 - Can't connect to local MySQL server through socket '/Applications/MAMP/tmp/mysql/mysql.sock' (2)
I've tried a lot of things found on the net, including on Stackoverflow, Server Fault, ... like reinstalling MAMP, symlink to /tmp/mysql.sock
, modify config.inc.php
, etc, but nothing worked.
Everything's good when i run mysql
from command line :
$ /Applications/MAMP/Library/bin/mysql -u root -p
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.5.29 Source distribution
mysql> SHOW SCHEMAS;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
3 rows in set (0,65 sec)
mysqld
is properly running :
$ ps -e | grep mysql
7007 ?? 0:00.03 /bin/sh /Applications/MAMP/Library/bin/mysqld_safe --port=8889 --socket=/Applications/MAMP/tmp/mysql/mysql.sock --lower_case_table_names=0 --pid-file=/Applications/MAMP/tmp/mysql/mysql.pid --log-error=/Applications/MAMP/logs/mysql_error_log
7141 ?? 0:00.37 /Applications/MAMP/Library/bin/mysqld --basedir=/Applications/MAMP/Library --datadir=/Applications/MAMP/db/mysql --plugin-dir=/Applications/MAMP/Library/lib/plugin --lower-case-table-names=0 --log-error=/Applications/MAMP/logs/mysql_error_log.err --pid-file=/Applications/MAMP/tmp/mysql/mysql.pid --socket=/Applications/MAMP/tmp/mysql/mysql.sock --port=8889
And socket file exist :
$ ls -la /Applications/MAMP/tmp/mysql/mysql.sock
srwxrwxrwx 1 user admin 0 21 avr 16:57 /Applications/MAMP/tmp/mysql/mysql.sock
Someone had already faced this kind of issue ?
回答1:
I am seeing exactly the same. MAMP MySQL running, and this messgage from PHPMyAdmin
MySQL said:
#2002 - Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
The server is not responding (or the local server's socket is not correctly configured).
I did use : sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock
to allow local PHP CLI access to MAMP MySQL
I found the config file for phpMyAdmin here: /Applications/MAMP/bin/phpMyAdmin/config.inc.php
I added this explicit path in the config file.
$cfg['Servers'][$i]['socket'] = '/Applications/MAMP/tmp/mysql/mysql.sock';
Now it works :)
回答2:
I got the same response when I went to the default URI via the link from the main Mamp page, which was http://localhost/phpMyAdmin/?lang=en-iso-8859-1&language=English
. I tried the previous answer's suggestions to no avail. But then, when I chopped off some of the options in the URI and instead just went to any of the following:
http://localhost/phpMyAdmin/?language=English
http://localhost/phpMyAdmin/?lang=en-iso-8859-1
http://localhost/phpMyAdmin
then it worked.
回答3:
It may find weird but, I tried deleting the file mysql.sock from the tmp directory and this error disappeared...
来源:https://stackoverflow.com/questions/16133467/mamp-phpmyadmin-2002-cant-connect-to-local-mysql-server-through-socket-a