问题描述:
当尝试通过:mysql -u root -p 1234 连接mysql时,出现以下错误:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
该错误与使用cmd或者Navicat无关,都会出现同样的错误提示
解决办法:
1.首先参考博客1中方法进行修改,给root用户设置新密码:
mysql> update user set password=password("新密码") where user="root";
提示:ERROR 1054 (42S22): Unknown column 'password' in 'field list'
是因为password需要大写吗?不晓得,然后寻找其他解决办法
2.参考博客2中方法提到的方法修改密码:
- 在mysql8.0之前的版本,修改root密码的命令是:
update mysql.user set authentication_string=password("你的密码") where user="root";
- mysql8.0之后的版本,修改root密码的命令是:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
能够成功修改密码,但是重新连接时还是出现了:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
3.最终解决方法
mysqladmin -u root password 1234