码迷,mamicode.com
首页 > 数据库 > 详细

MySQL root用户无法登录原因及解决办法

时间:2020-11-13 12:34:47      阅读:16      评论:0      收藏:0      [点我收藏+]

标签:可以登录   无法登录   输入   其他   info   启动mysql   没有   database   mysq   

MySQL root密码正确,却怎么也bai无法du从本地登录MySQL
登录提示
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
可能原因是mysql库中bai的user表缺少一个root指向host:localhost的数据项,只有一个root指向host:主机名的数据项,故怎么也无法利用root账户登录MySQL。
解决办法
1、 首先kill掉MySQL进程
2、 在启动mysql的参数中加入 --skip-grant-tables
这时无密码就可以登录mysql了
3、 修复root账户丢失的数据项
这里有两种解决方案:
  
第一种是因为root账户初始的时候有3条记录,包含root对应localhost,hostname,127.0.0.1三条账户数据,我们可以update host为其他两项中一项为localhost即可。
  
第二种是直接insert一条记录,host为localhost即可
  即使root的host包含了主机名,127.0.0.1那么依然是无法正常登录的,这里必须要有localhost的host才行。
  
如果上面办法还是无法正常登录我们可尝试另一种办法
在本地用mysql命令直接回车可以进入mysql,但是里面只有test和information_schema数据库,没有mysql等数据库,使用use mysql报如下错:
mysql> use mysql
  ERROR 1044 (42000): Access denied for user "@‘localhost‘ to database ‘mysql‘
  意思是说没有指定user,没有权限访问数据库mysql。
  那么用root登录呢,输入正确的密码报如下错:
  [root@228827 ~]# mysql -uroot -p123456
  ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)
  密码正确的情况下,mysql数据库已经禁止了root用户在本地的登录权限了

MySQL root用户无法登录原因及解决办法

标签:可以登录   无法登录   输入   其他   info   启动mysql   没有   database   mysq   

原文地址:https://blog.51cto.com/14483703/2546111

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!