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

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

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


当前回答

我设法通过将localhost更改为127.0.0.1来解决这个问题

其他回答

在您的终端上使用MySQL命令之前,您需要启动MySQL。为此,运行brew services start mysql。默认情况下,brew安装MySQL数据库时不需要root密码。要确保安全,请运行mysql_secure_installation。

连接时执行:mysql -uroot。Root是这里的用户名。

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

试试这个

rm -rf /usr/local/var/mysql && brew postinstall mysql@5.7 && brew services restart mysql@5.7

如果你在OSX和XAMPP上,那么请遵循以下步骤:

感谢Jackstine的回答,我得以做到以下几点:

$ cat ~/.my.cnf

[mysql]

# CLIENT #
port                           = 3306
socket                         = /Applications/XAMPP/xamppfiles/var/mysql/mysql.sock

我希望这能在我将来忘记的时候再次帮助我!

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

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