web-dev-qa-db-ja.com

MAMP-phpMyAdmin#2002-ソケット '/Applications/MAMP/tmp/mysql/mysql.sock'を介してローカルMySQLサーバーに接続できません

私はMAMPphpMyAdminに取り組んでいて、SQLタブからALTER TABLEステートメントをクエリするまですべてがうまく機能しました。操作が長すぎて終了できなかったので、ページを更新することにしました。この時点から、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

誰かがすでにこの種の問題に直面していましたか?

11
Yaman

私はまったく同じように見ています。 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からMAMPMySQLへのアクセス

PhpMyAdminの設定ファイルは次の場所にあります:/Applications/MAMP/bin/phpMyAdmin/config.inc.php

この明示的なパスを構成ファイルに追加しました。

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

今それは動作します:)

16
thinkadoo

メインのMampページからのリンクを介してデフォルトのURIに移動したときも同じ応答がありました。これは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

それからそれは働いた。

2
beth

奇妙に感じるかもしれませんが、tmpディレクトリからmysql.sockファイルを削除しようとすると、このエラーは消えました...

0
Rajesh