MAMP - phpMyAdmin #2002 - Can't connect to loc

2019-02-16 14:27发布

问题:

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...