11

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 ?

Yaman
  • 3,949
  • 4
  • 38
  • 60
  • on Mavericks, I was able to do the opposite to get mine working - sudo ln -s /tmp/mysql.sock /Applications/MAMP/tmp/mysql/mysql.sock – kronus Feb 25 '14 at 18:15

3 Answers3

17

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 :)

thinkadoo
  • 183
  • 8
  • 1
    I've already tried these ones but it didnt work. Then i did some random shit and it works i dont know how xD – Yaman May 22 '13 at 13:45
  • when i execute sudo ln -s /Applications/MAMP ... all comands of my terminal (sudo, open, cat, vi ... )stopped working ... – Gilberto Ibarra Dec 16 '15 at 17:24
  • @GilbertoIbarra: That must be an unrelated problem, a simple `ln` should not have that happen. – damd Sep 13 '16 at 09:15
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.

beth
  • 1,916
  • 4
  • 23
  • 39
0

It may find weird but, I tried deleting the file mysql.sock from the tmp directory and this error disappeared...

Rajesh
  • 1