我正在尝试在mac os 10.6上使用Homebrew by brew安装MySQL 5.1.52。

一切都很顺利,我也成功地使用mysql_install_db。 然而,当我试图连接到服务器使用:

/usr/local/Cellar/mysql/5.1.52/bin/mysqladmin -u root password 'mypass'

我得到:

/usr/local/Cellar/mysql/5.1.52/bin/mysqladmin: connect to server at 'localhost' 
failed error: 'Access denied for user 'root'@'localhost' (using password: NO)'

我尝试访问mysqladmin或mysql使用-u root - root以及, 但是有没有密码都不行。

这是全新机器上的全新安装,据我所知,新安装必须在没有根密码的情况下访问。我还试过:

/usr/local/Cellar/mysql/5.1.52/bin/mysql_secure_installation

但我也得到了

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

当前回答

删除/opt/homebrew/var/mysql就可以了。显然有mysql数据(包括密码),所以上述所有操作都是徒劳的。

其他回答

家酿

首先,确保安装了自制程序 运行brew doctor,解决任何homebrew想要你解决的问题 运行brew install mysql 运行brew services重启mysql 运行mysql。服务器启动 运行mysql_secure_installation

博士TL;

MySQL服务器在安装Brew后可能无法运行。尝试brew services启动mysql或只启动mysql。如果您不希望MySQL作为后台服务运行,请启动服务器。

完整的故事:

我刚刚在一台运行Sierra的新MacBook Pro上安装了MySQL(稳定)5.7.17,在运行mysql_secure_installation时也得到了一个错误:

Securing the MySQL server deployment.

Enter password for user root: 
Error: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

你说什么?

根据Brew的安装信息,mysql_secure_installation应该会提示我…安装安全。我认为MySQL服务器可能没有运行,这是正确的。运行brew服务启动mysql,然后运行mysql_secure_installation。

我也有同样的问题。似乎设置指令或正在创建的初始表有问题。这就是我在我的机器上运行mysqld的方式。

如果mysqld服务器已经在你的Mac上运行,首先用以下命令停止它:

启动ctl卸载-w ~/图书馆/LaunchAgents/com.mysql mysqld.plist

使用以下命令启动mysqld服务器,允许任何人以完全权限登录。

mysqld_safe——skip-grant-tables

然后运行mysql -u root,现在应该可以让你成功登录,无需密码。下面的命令应该重置所有的root密码。

更新mysql。SET Password ('NewPassword') WHERE user ='root';冲洗特权;

现在,如果你关闭了mysqld_safe的运行副本,并在没有skip-grant-tables选项的情况下重新启动它,你应该可以使用mysql -u root -p和你刚刚设置的新密码登录。

删除/opt/homebrew/var/mysql就可以了。显然有mysql数据(包括密码),所以上述所有操作都是徒劳的。

尝试解决方案,我提供的MariaDB,高变化,它与MySQL的工作也:

MacOSX homebrew mysql root密码

简而言之,请尝试使用您的用户名登录!没有根。

尝试使用与MacOS帐户用户名相同的名称,例如johnsmit。

要以root用户登录,请执行以下命令:

mysql -u johnsmit