MAMP - phpMyAdmin # 2002 - Не удается подключиться к локальному серверу MySQL через сокет '/Applications/MAMP/tmp/mysql/mysql.sock'

Я работал над MAMP phpMyAdmin, и все работало хорошо, пока я не запрошу инструкцию ALTER TABLE на вкладке SQL. Операция была слишком длинной, чтобы закончить, поэтому я решил обновить свою страницу. С этого момента я больше не могу связаться с phpMyAdmin, и у меня всегда есть это сообщение:

#2002 - Can't connect to local MySQL server through socket '/Applications/MAMP/tmp/mysql/mysql.sock' (2)

Я пробовал много вещей, найденных в сети, в том числе в Stackoverflow, Server Fault,... как переустановка MAMP, символическая ссылка на /tmp/mysql.sock, изменение config.inc.php и т.д., но ничего не работало.

Все хорошо, когда я запускаю mysql из командной строки:

$ /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 работает нормально:

$ 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

И файл сокета существует:

$ ls -la /Applications/MAMP/tmp/mysql/mysql.sock 
srwxrwxrwx  1 user  admin  0 21 avr 16:57 /Applications/MAMP/tmp/mysql/mysql.sock

Кто-то уже сталкивался с такой проблемой?

Ответ 1

Я вижу точно то же самое. MAMP MySQL работает, и эта почта из PHPMyAdmin

MySQL сказал:

#2002 - Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

Сервер не отвечает (или неправильно настроен локальный серверный сервер).

Я использовал: sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock разрешить доступ к локальному PHP CLI для MAMP MySQL

Я нашел файл конфигурации для phpMyAdmin здесь: /Applications/MAMP/bin/phpMyAdmin/config.inc.php

Я добавил этот явный путь в файл конфигурации.

$cfg['Servers'][$i]['socket'] = '/Applications/MAMP/tmp/mysql/mysql.sock';

Теперь он работает:)

Ответ 2

Я получил тот же ответ, когда перешел на URI по умолчанию по ссылке с главной страницы Mamp, которая была http://localhost/phpMyAdmin/?lang=en-iso-8859-1&language=English. Я попробовал предыдущие предложения ответа безрезультатно. Но затем, когда я отрубил некоторые параметры в URI и вместо этого просто пошел к любому из следующего:

  • http://localhost/phpMyAdmin/?language=English
  • http://localhost/phpMyAdmin/?lang=en-iso-8859-1
  • http://localhost/phpMyAdmin

тогда это сработало.

Ответ 3

Может показаться странным, но я попытался удалить файл mysql.sock из каталога tmp, и эта ошибка исчезла...