无法在Mac上重置MySQL root密码

时间:2017-05-19 12:08:21

标签: mysql macos passwords

我刚刚在我的mac上使用brew重新安装了MySQL。 据我所知,一切正常,但我无法更改我的root密码。

在尝试时,我收到错误消息

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

解决这个问题的常用方法似乎是使用(堆栈溢出的几个答案建议使用它):

sudo mysqld_safe --skip-grant-tables
2017-05-19T11:54:35.6NZ mysqld_safe Logging to '/usr/local/var/mysql/mac.err'.
2017-05-19T11:54:35.6NZ mysqld_safe Starting mysqld daemon with databases from /usr/local/var/mysql
2017-05-19T11:54:35.6NZ mysqld_safe mysqld from pid file /usr/local/var/mysql/mac.pid ended

我在执行命令之前停止了服务器。但是这个解决方案对我不起作用。

错误日志

中也没有条目
/usr/local/var/mysql/mac.err

我还阅读了有关使用mysql_secure_installation的信息,但我收到的信息与使用mysql -u root时的信息相同。

正如我上面提到的,我已经尝试过再次卸载并重新安装它,但显然有些数据仍然存在。那么有没有办法手动删除或重置这些文件?

2 个答案:

答案 0 :(得分:1)

OP解决方案。

事实证明:

mysql.server start --skip-grant-tables

(不确定是否需要sudo

适合我。

答案 1 :(得分:0)

拒绝访问是因为您未指定-p开关 如果您知道旧密码,那么可以登录MySql并将其更改为:    1).login到MySql 2)。更改到正确的数据库3)更改passwd和flush

mysql -u root -p
mysql> use mysql;
mysql> update user set password=PASSWORD("newpass") where User='ENTER-USER-NAME-HERE';

的MySQL>冲洗特权;    MySQL的>退出

此外,以下适用于Linux / Unix系统,但我还没有在Mac上测试过(如果安装了客户端,可能会有效)

mysqladmin -u root -p oldpassword newpass

参考:https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html

//如果你不记得密码,要恢复密码,请查看(底部)。

https://www.howtoforge.com/setting-changing-resetting-mysql-root-passwords

https://coolestguidesontheplanet.com/how-to-change-the-mysql-root-password/