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

吃可爱长大的小学妹 提交于 2019-11-26 14:33:25

问题


I'm running MAMP.
It has been working fine up until yesterday. I haven't been able to find anything that helps so far. But here is my problem:

As the title states I'm receiving the following error:

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

which, I have noticed, seems to be a pretty common error when I search for it.

Anyway, When I cd to tmp/mysql and ls -laxo the only thing that shows up besides the ./ and ../ directories is .dummy (I have no idea what that is, but I have a hunch it's not the source of my problem).

That is where the mysql.sock file is suppose to be located. Does anyone know of a way to fix this. Maybe I need to create the mysql.sock file but I wouldn't know what to put in it.


回答1:


Test

If you attempt to start MySQL using the full path it should work

/Applications/MAMP/Library/bin/mysql -u root -p

Fix

If that works, then you can set it to work normally by running

sudo ln -s /Applications/MAMP/tmp/mysql/mysql.sock /tmp/mysql.sock

Resolution

Now MySQL should work normally

mysql -u root -p



回答2:


I know this is late, but if ever someone is searching this (as I was tonight, but I found the solution), here's what worked for me:

I opened MAMP and had to click "USE default Apache and MySQL ports". (80 and 3306 instead of 8888 and 8889). That seemed to fix the issue.




回答3:


Mysql server has not started.

mysqld stop
mysql.server start



回答4:


Silly solution... But in my case, I didnt start the mysql server. So, look that also!




回答5:


I faced the same problem. When i start MAMP separately, then the problem gone. And issuing following command worked fine.

mysql -u root -p



回答6:


If you'd rather avoid changing ports through MAMP or options in my.cnf file, it might be useful to try forcing a TCP connection via the following on the command line:

/Applications/MAMP/Library/bin/mysql -h 127.0.0.1 -P 8889 -u root

Remembering to set the port is important if it's anything other than the mysql default of 3306.

The -P parameter allows you to set the port.

MAMP's default port is 8889, but you can verify what yours is set to easily via the MAMP WebStart page while MAMP is running:

http://localhost:8888/MAMP/

It'll look similar to this:



来源:https://stackoverflow.com/questions/11105796/error-2002-cant-connect-to-local-mysql-server-through-socket-applications-ma

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!