mysql登录报错提示:ERROR 1045 (28000)的解决方法
本文分析了mysql登录报错提示:ERROR1045(28000)的解决方法。分享给大家供大家参考,具体如下:
一、问题:
公司linux系统的mysql数据库root用户设置过密码,但常常用命令'mysql-uroot-p'登录报错,有时又能登录。登录报错信息为:
[root@localhost~]#mysql-uroot-p Enterpassword: ERROR1045(28000):Accessdeniedforuser'root'@'localhost'(usingpassword:YES)
二、原因:数据库中存在空用户所致
三、解决方法:
1、停用mysql服务:
#servicemysqlstop
2、输入命令:
#mysqld_safe--user=mysql--skip-grant-tables--skip-networking&
3、登入数据库:
#mysql-urootmysql
4、
mysql>usemysql;
5、
mysql>selectuser,host,passwordfromuser;
结果如下:
+------+-----------------------+----------+
|user|host |password|
+------+-----------------------+----------+
|root|% |mima |
|root|localhost.localdomain|mima |
|root|127.0.0.1 |mima |
| |localhost | |
| |localhost.localdomain| |
+------+-----------------------+----------+
6、将上面查询出来的空用户删除:
mysql>deletefromuserwhereuser='';
7、退出数据库:
mysql>quit
8、启动mysql服务:
#servicemysqlstart
9、重新用命令:
mysql-uroot-p
登录,OK!
更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》、《MySQL数据库锁相关技巧汇总》及《MySQL常用函数大汇总》
希望本文所述对大家MySQL数据库计有所帮助。