安装完Mysql在终端使用时输入正确密码依旧会报错:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)](https://www.cnblogs.com/jiayeyuan/p/10773364.html)
在网上查了很多资料都零零散散的不太对, 自己总结下方便下次遇到好解决
MySQL安装时默认的用户是root,这里的root是指数据库的用户,需要重新再设置一次root密码.
问题解决:
1.把安装好的Mysql停掉,系统偏好设置->Mysql->Stop Mysql Server
// 注意这个方法不一定能停掉,如果不行直接在进程把Mysql删掉
2.进入终端输入以下命令:
cd /usr/local/mysql/bin/
sudo su 需要输入管理员密码(就是电脑设置的密码)
./mysqld_safe --skip-grant-tables & 禁止Mysql验证功能,回车后mysql会自动重启
image.png
出现这个界面以后输入./mysql进入mysql
// 注意如果重启失败终端下会出现以下内容:
mysqld_safe mysqld from pid file /usr/local/mysql/data/mysql.pid ended,说明你在第一步没有把Mysql停掉,最好使用进程把Mysql关掉,然后重新来一遍
3.进入Mysql重新设置密码
Mysql8.0版本以后Mysql语句有更新废弃了password字段和password()函数,使用下面的语句设置:
ALTER user 'root'@'localhost' IDENTIFIED BY 'newpassword';
5.7版本以前:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpassword');
在终端输入:FLUSH PRIVILEGES;
exit退出mysql;
网友评论