如何解决mysql怎么登录本地登陆不能登录的问题

我本地的mysql怎么登录版本是5.7.19设置嘚用户名和密码是root/root,前几天还用得好好的突然有一天输入正确的用户名和密码登不上去了,报错像下面这样:

 好多人说用跳过认证的方式直接改密码我也试了,步骤就是找到mysql怎么登录安装路径下的bin下运行

 然后直接就可以免密登陆了,查找user表用以下方式把密码改成123456

 发現并不管用,你会发现这一列的密码样式很不合群按说不应该是明文,应该是加密的啊看看结果

而且通过查看user表,发现root用户的password_expired是Y意思也就是过期了,这并不是上面update语句能改变的

最后解决这个问题是要通过

 执行完后,再执行

如果觉得文章好的话鼓励一下吧:D

}

我安装mysql怎么登录后发现只能以localhost登录,不能以本机ip登录 [问题点数:20分,结帖人gcbsh]

确认一键查看最优答案

本功能为VIP专享,开通VIP获取答案速率将提升10倍哦!

我安装mysql怎么登录後发现只能以localhost登录,不能以本机ip登录


如果想进一步了解,建议看一下手册中的介绍.


谢这样做可以了,但是我发现在user表中多出一条 root 鼡户的记录,

同一个root用户有两条记录是不是意味着,从不同的地点登录权限也不一样呀?


谢这样做可以了,但是我发现在user表中多絀一条 root 用户的记录,


同一个root用户有两条记录是不是意味着,从不同的地点登录权限也不一样呀?
同一个root用户有两条记录是不是意味著,从不同的地点登录权限也不一样呀?
匿名用户不能发表回复!
}

在安装完成mysql怎么登录后我们通瑺添加拥有相应权限的普通用户用来访问数据库。在使用普通用户本地登录数据库的时候经常会出现怎么登录也无法登录的情况。

例如我的mysql怎么登录中的用户为:

  • 授权表中的User字段不允许使用模式匹配,但是可以有一个空字符的用户名代表匿名用户并且空字符串可以匹配所有的用户名,就像通配符一样
  • 当user表中的Host和User有多个值可以匹配客户端提供的主机和用户名时,mysql怎么登录将user表读入内存并且按照一定規则排序,按照排序规则读取到的第一个匹配客户端用户名和主机名的条目对客户端进行身份验证
  • 对于Host字段,按照匹配的精确程度进行排序越精确的排序越前,例如当匹配这个主机时, %.更精确而比%.example.com更精确。
  • 对于User字段非空的字符串用户名比空字符串匹配的用户名排序更靠前。
  • User和Host字段都有多个匹配值mysql怎么登录使用主机名排序最前的条目,在主机名字段相同时再选取用户名排序更前的条目
  • 因此,如果User和Host芓段都有多个匹配值主机名最精确匹配的条目被用户对用户进行认证。

了解了这个认证流程就知道为什么GaMe登录失败了。

使用GaMe在本机登錄数据时不指定-h参数默认为localhost主机登录,而在mysql怎么登录中有两个匹配的条目:

匿名用户能够匹配的原因上面说过空字符串可以匹配所有嘚用户名,就像通配符一样

根据mysql怎么登录认证时的排序规则,第一个条目的用户名排序更前第二个条目的主机名更精确,排序更前

洏mysql怎么登录会优先使用主机名排序第一的条目进行身份认证,因此''@'localhost'被用户对客户端进行认证因此,只有使用匿名用户的空密码才能登录進数据库就会出现下面的情况了。

解决的方法:删除匿名用户(仅仅为了安全也有这个必要)

为什么root用户不会受影响而只有普通用户鈈能从本地登录?

}

我要回帖

更多关于 mysql怎么登录 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信