有时候我们登录Mysql输入密码的时候,会出现这种情况
mysql -u root -p
Enter Password > ‘密码’
错误:ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)
或者:错误:ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: NO)
二、解决办法
修改my.in/my.cnf配置文件
进入mysql安装目录
编辑my.ini,这里要注意,如果你没有my.ini文件,就在Mysql安装目录下新建一个
在[mysqld]下添加skip-grant-tables,保存即可。
修改后内容是这个样子,这里注意是[mysqld],一定要仔细看,别加到[mysql]里面去了
[mysqld]
character-set-server=utf8mb4
bind-address=0.0.0.0
port=3306
default-storage-engine=INNODB
skip-grant-tables
[mysql]
default-character-set=utf8mb4
[client]
default-character-set=utf8mb4
使用管理员身份打开命令行
①重启mysql:
net stop mysql 2、net start mysql
②进入mysql,登录
mysql -u root -p
不用输入密码,直接回车(出现Enter Password 也一样直接回车,即可登陆成功)
③输入use mysql,修改root的密码:
update user set authentication_string=password(‘新密码’) where user=‘root’;
flush privileges;
④退出:
quit;
⑤再次重启mysql:
net stop mysql 2、net start mysql
⑥测试是否成功就是是否登陆成功咯。
mysql -u root -p
Enter Password>‘新密码’
就不会出错,可以登录啦!!!
原文链接:https://blog.csdn.net/zhengkanzhuang6120/article/details/119868006
来源地址:https://blog.csdn.net/Pei_hua100/article/details/131792944