我正在使用MAMP phpMyAdmin,一切正常,直到我从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
有人已经遇到过这种问题吗?
答案 0 :(得分:16)
我看到的完全相同。 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';
现在有效:)
答案 1 :(得分:2)
当我通过主Mamp页面的链接http://localhost/phpMyAdmin/?lang=en-iso-8859-1&language=English
转到默认URI时,我得到了相同的响应。我尝试了之前的答案的建议无济于事。但是,当我切断URI中的一些选项,而只是去了以下任何一个:
http://localhost/phpMyAdmin/?language=English
http://localhost/phpMyAdmin/?lang=en-iso-8859-1
http://localhost/phpMyAdmin
然后它奏效了。
答案 2 :(得分:0)
它可能会发现很奇怪但是,我尝试从tmp目录中删除文件mysql.sock并且此错误消失了......