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

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

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


当前回答

警告:此方法将删除/usr/local/var/mysql文件夹中的所有数据库

我在Homebrew上安装了MySQL,唯一解决这个问题的方法就是重新安装MySQL。

在我公司的笔记本电脑上,我没有通过Homebrew卸载MySQL的权限:

$ brew uninstall mysql --ignore-dependencies
Uninstalling /usr/local/Cellar/mysql/8.0.12... (255 files, 233.0MB)
Error: Permission denied @ dir_s_rmdir - /usr/local/Cellar/mysql/8.0.12

所以,我手动删除并重新安装MySQL:

$ sudo rm -rf /usr/local/Cellar/mysql
$ brew cleanup
$ sudo rm -rf /usr/local/var/mysql
$ brew install mysql

这奏效了!

其他回答

这可能是因为MySQL已经安装但还没有运行。

要验证它正在运行,打开活动监视器,在“所有进程”下,搜索并验证你看到了进程“mysqld”。

你可以通过安装“MySQL.prefPane”来启动它。

以下是帮助我的完整教程: http://obscuredclarity.blogspot.in/2009/08/install-mysql-on-mac-os-x.html

正如其他人指出的,这是因为MySQL已经安装,但服务没有运行。启动MySQL服务的方法有很多种,对我有用的方法如下。

启动服务。

转到“系统首选项” 在底部窗格中应该有MySql图标。 双击启动“MySQL服务器状态”,按下“启动MySQL服务器”按钮

我的环境:

Mac Yosemite 10.10.3

安装包:/Volumes/mysql-advanced-5.6.24-osx10.8-x86_64

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)现在,它起作用了。

看起来你的mysql服务器没有启动。我通常运行stop命令,然后重新启动:

mysqld stop
mysql.server start

同样的错误,这也适用于我。

这个问题与/usr/local/var/mysql文件夹访问有关,我删除这个文件夹并重新安装mysql。

用brew卸载mysql: 卸载mysql 执行rm -r /usr/local/var/mysql Brew install mysql@8.0 Mysql -u root

这个解决方案很适合我! 但是你丢失了所有的数据库!警告!