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

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

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


当前回答

我一直回到这篇文章,我已经遇到这个错误好几次了。这可能与在重新安装后导入所有数据库有关。

我用的是自制啤酒。唯一能帮我解决问题的是

sudo mkdir /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock

今天早上,在我的机器决定关闭一夜之后,这个问题又出现了。现在唯一能解决这个问题的就是升级mysql。

brew upgrade mysql

其他回答

卸载MySQL。 删除/usr/local/var/mysql/. 安装MySQL。

执行命令:brew info mysql

按照说明做。由公式中的描述可知:

Set up databases to run AS YOUR USER ACCOUNT with:
    unset TMPDIR
    mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

To set up base tables in another folder, or use a different user to run
mysqld, view the help for mysql_install_db:
    mysql_install_db --help

and view the MySQL documentation:
  * http://dev.mysql.com/doc/refman/5.5/en/mysql-install-db.html
  * http://dev.mysql.com/doc/refman/5.5/en/default-privileges.html

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服务器使用下面的解决方案

通过.dmg(https://dev.mysql.com/downloads/mysql/5.7.html)安装mysql,你会在系统首选项中看到mysql服务面板,然后从面板中启动mysql并尝试

Mysql -u root -p

附图供参考

下面我包括了最新的说明从brew安装mysql,以便更新搜索这个问题可以受益:

$ brew install mysql
==> Downloading https://homebrew.bintray.com/bottles/mysql-5.6.26.yosemite.bottle.1.tar.gz
######################################################################## 100.0%
==> Pouring mysql-5.6.26.yosemite.bottle.1.tar.gz

To connect:
    mysql -uroot

To have launchd start mysql at login:
  ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
Then to load mysql now:
  launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Or, if you don't want/need launchctl, you can just run:
  mysql.server start

在我的情况下,我现在通过launchctl load加载mysql ~/Library/LaunchAgents/homebrew.mx .mysql。Plist,然后能够启动$ mysql和我的方式。