我正在运行MAMP。 到昨天,它一直很好。到目前为止,我还没有找到任何有用的东西。但这是我的问题:
正如标题所述,我收到以下错误:
我注意到,当我搜索它时,它似乎是一个非常常见的错误。错误#2002 “无法通过套接字连接到本地MySQL服务器 '/Applications/MAMP/tmp/mysql/mysql.sock'(2)“
无论如何,当我转到tmp/mysql
和ls -laxo
时,除了./
和../
目录之外,唯一显示的内容是.dummy
(我没有想法是什么,但我有预感,这不是我的问题的根源)。
这就是假定找到mysql.sock
文件的位置。有谁知道解决这个问题的方法。也许我需要创建mysql.sock
文件,但我不知道该放入什么内容。
答案 0 :(得分:26)
<强>测试强>
如果您尝试使用完整路径启动MySQL,它应该可以工作
/Applications/MAMP/Library/bin/mysql -u root -p
<强>修正强>
如果可行,则可以通过运行
将其设置为正常工作sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock
解决强>
现在MySQL应该正常工作
mysql -u root -p
答案 1 :(得分:5)
我知道这已经很晚了,但是如果有人在搜索这个(就像我今晚一样,但我找到了解决方案),这对我有用:
我打开了MAMP,不得不点击“使用默认的Apache和MySQL端口”。 (80和3306而不是8888和8889)。这似乎解决了这个问题。
答案 2 :(得分:1)
Mysql服务器尚未启动。
mysqld stop
mysql.server start
答案 3 :(得分:0)
我遇到了同样的问题。当我单独启动MAMP时,问题就消失了。发出以下命令工作正常。
mysql -u root -p
答案 4 :(得分:0)
如果您宁愿避免通过MAMP或my.cnf文件中的选项更改端口,尝试通过以下命令行强制TCP连接可能会有用:
/Applications/MAMP/Library/bin/mysql -h 127.0.0.1 -P 8889 -u root
如果它不是mysql默认值3306,那么记住设置端口很重要。
-P
参数允许您设置端口。
MAMP的默认端口是8889,但您可以在MAMP运行时通过MAMP WebStart页面轻松验证您的设置:
它看起来与此相似:
答案 5 :(得分:0)
愚蠢的解决方案...但就我而言,我没有启动mysql服务器。所以,也看!