成都网站建设设计

将想法与焦点和您一起共享

解决mysql全局权限账户%无法登录的方法

这篇文章主要介绍解决MySQL全局权限账户%无法登录的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

目前成都创新互联公司已为近1000家的企业提供了网站建设、域名、雅安服务器托管成都网站托管、企业网站设计、乐东黎族网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

mysql中有新建了一个%(允许所有主机连接)和ALL权限的账户。但是竟然连不上。用root或者其他localhost的用户却可以登录。首先检查下防火墙打开了没,可以用service iptables stop打开防火墙。如果仍然报错:

解决mysql全局权限账户%无法登录的方法

报错:ERROR 1045 (28000): Access denied for user 'zzq'@'localhost' (using password: YES)

帐号密码都对了 就是连不上。细心的话我们会发现 帐号权限是%,而这里提示的是localhost。

错误原因如下:

解决mysql全局权限账户%无法登录的方法

mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost'   IDENTIFIED BY 'some_pass' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%'      IDENTIFIED BY 'some_pass' WITH GRANT OPTION;

?6?1 前两个帐户名称都是monty,而且都是拥有所有权限和密码。但是两者的区别在于,第一个帐户(monty@localhost)只能通过本地登录,而第二个账户(monty@%)可以通过任意主机登录。值得注意的是,为了能够使用monty帐户在任何地方进行登录,这两个账户同时存在则是必要的。因为,如果没有本地帐户(monty@localhost),使用monty帐户登录时,mysql_install_db将优先考虑创建一个本地的匿名帐户。那么结果将是monty账户会被当作一个匿名帐户来处理。原因则在于,匿名帐户拥有一个比nonty@%账户更加具体的host字段值,从而在user表排序的时候会相对出现的更早。

也就是说  同一个账户 要同时存在%帐号或者localhost帐号时, %帐号才起作用。

我们给 zzq帐号添加一个localhost帐号。

解决mysql全局权限账户%无法登录的方法

GRANT ALL PRIVILEGES ON *.* TO 'zzq'@'localhost'   IDENTIFIED BY '123456' WITH GRANT OPTION;

flush privileges;

然后再登录 发现可以登录了。

以上是解决mysql全局权限账户%无法登录的方法的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


文章名称:解决mysql全局权限账户%无法登录的方法
浏览路径:http://chengdu.cdxwcx.cn/article/gpcpii.html