MySQL报错Access denied for user 'root'@'localhost'

报错信息如下:

[root@localhost ~]# mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

 

问题产生原因:

数据库中存在空的用户

 

解决方法:

1 停用mysql服务:# service mysql stop

2 输入命令:# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

3 登入数据库:# mysql -u root mysql

4 mysql> use mysql;

mysql> select user,host,password from user;

6 将上面查询出来的空用户删除:mysql> delete from user where user='';

7 退出数据库:mysql> quit

8 启动mysql服务:# service mysql start

9 重新登录:# mysql -u root -p

 

posted @   ycyzharry  阅读(1963)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构

喜欢请打赏

扫描二维码打赏

支付宝打赏

点击右上角即可分享
微信分享提示