我在Mac OS X Mountain Lion上安装了MySQL,但当我尝试MySQL -u root时,我得到了以下错误:

错误2002 (HY000):无法通过套接字/tmp/ MySQL连接到本地MySQL服务器。袜子”(2)

这个错误意味着什么?我该怎么解决呢?


当前回答

在使用了以上所有的解决方案后,没有一个对我有效,但这个有效。

如果你已经使用HomeBrew安装了MySQL,然后检查系统首选项> MySQL在你的mac中,MySQL服务器已经停止,如果它正在运行,请单击停止MySQL服务器,并从终端写入命令mysqlserver.start启动MySQL。

如果它不工作,你也可以尝试:-

如果您已经安装了MySQL工作台,那么只需卸载MySQL工作台和MySQL,然后先安装MySQL,再安装MySQL工作台。

其他回答

在做了几个小时之后,对我有用的是 进入/etc/mysql/,编辑my.cnf文件。添加以下内容

[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock

我已经尝试了所有可能的方法来解决这个问题,比如ln -s /var/lib/mysql/mysql.袜子/ tmp / mysql。Sock,卸载并重新安装mysql,确保mysql在xampp上运行,但没有一个仍然工作。

最后,我打开my.cnf(配置文件)并复制套接字路径(确保复制完整路径,否则它将不起作用)。然后在我的终端中执行这个命令

mysql --socket=/Applications/XAMPP/xamppfiles/var/mysql/mysql.sock

瞧,mysql启动了。

这个解决方案只会工作,如果你的MySQL显示在Xampp/Ampps上运行,但在终端它仍然没有连接到正确的套接字时,你已经尝试了类似的:

./mysql -u root

or

brew services start mysql

如果你正在使用Kali linux,你可能需要显式地指定主机

用 Mysql -h 127.0.0.1 -u root 127.0.0.1是您的本地主机

1)->首先启动SQL server 2)(如果不存在)你必须在你安装的地方创建一个'etc'目录 Mysql ->在其中创建一个名为“Mysql .sock”的文件。 3)然后执行下面的行

 ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

4)重启服务器

5)找到mysql的路径。通过在线下执行Sock '

mysql -u root -p -h 127.0.0.1 -e "select @@socket"

现在你可以看到路径->复制该路径 6)复制完成后执行以下一行

mysql -u (username) -p -S (paste the path you copied)

7)现在,它起作用了。

在尝试了许多解决方案之后,似乎最终成功的是通过IP连接。不再文件套接字被随机删除。

只需更新MySQL客户端配置(例如/usr/local/etc/my.cnf):

[client]
port = 3306
host=127.0.0.1
protocol=tcp