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

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

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


当前回答

指定数据目录/usr/local/var/mysql/不可用。您可以删除服务器添加到其中的所有文件。

MacOS: $brew服务停止mysql $brew服务列表 卸载mysql 安装mysql $brew postinstall mysql 如果发现任何错误,则运行这些cmd ! 警告:这将删除该服务器上的所有数据库: $sudo rm -rf /usr/local/var/mysql $sudo rm /usr/local/etc/my.cnf $brew postinstall mysql $brew服务启动mysql mysql_secure_installation美元 安全安装完成后运行

$mysql -u root -p

恭喜你已经安装好mysql了!

其他回答

下面我包括了最新的说明从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和我的方式。

解决方案围绕:

修改MySQL的权限 sudo chown -R _mysql:mysql /usr/local/var/mysql 启动MySQL进程 sudo mysql。服务器启动

如果上面的命令不能帮你解决这个问题,那就试着指定主机

mysql -u root -p h127.0.0.1

执行命令: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

警告:此方法将删除/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

这奏效了!

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