四川快乐12官网:ERROR 1044 (42000) : Access denied for user ‘root’@'localhost’

从供应商那边接手一个MySQL数据库(数据库版本为5.7.21 MySQL Community Server (GPL)),在创建账号时遇到了“ERROR 1044 (42000): Access denied for user ‘root’@'localhost’ to database xxx”错误,如下所示

mysql> grant all on xxx.* to [email protected]'192.168.%' identified by 'xxx';
ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database 'xxxx'
mysql>

照理说,root用户应该有任何权限,那么为什么出现这个错误呢? 查看当前用户为[email protected],顺便查看了一下各个root账号的权限。如下所示:

mysql> select current_user() from dual;
+----------------+
| current_user() |
+----------------+
| [email protected] |
+----------------+
1 row in set (0.00 sec
 
mysql> select host,user from user where user='root';
+-----------+----------+
| host      | user     |
+-----------+----------+
| %         | root     |
| 127.0.0.1 | root     |
| ::1       | root     |
| localhost | root     |
+-----------+----------+
7 rows in set (0.00 sec)
 
mysql>  show grants for [email protected]'localhost';
+--------------------------------------------------------------+
| Grants for [email protected]                                    |
+--------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'            |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION |
+--------------------------------------------------------------+
2 rows in set (0.00 sec)
 
mysql> show grants for [email protected]'127.0.0.1';
+---------------------------------------------------------------------+
| Grants for [email protected]                                           |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' WITH GRANT OPTION |
+---------------------------------------------------------------------+
1 row in set (0.00 sec)
 
mysql> show grants for [email protected]'%';
+-------------------------------------------+
| Grants for [email protected]%                         |
+-------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' |
+-------------------------------------------+
1 row in set (0.00 sec)

如上所示,[email protected]账号没有WITH GRANT OPTION选项,关于WITH GRANT OPTION选项,如果想让授权的用户,也可以将这些权限授予给其他用户,需要选项 “WITH GRANT OPTION“ 。也就是说有这个选项就可以将权限传递给第三方。这也是上面[email protected]用户给其它用后授权报错的原因,如果以 [email protected]登录(此账号拥有WITHGRANT OPTION选项),创建用户并授权就不会有这个错误,如下所示:

# mysql -host 127.0.0.1 -u root -p
Enter password: 
 
mysql>  grant all on xxx.* to [email protected]'192.168.%' identified by 'test1249';
Query OK, 0 rows affected, 1 warning (0.00 sec)
 
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

当然还有其它方面的原因也可能会引起这个错误,不过在这个案例当中,确实仅仅是因为上面原因引起。特此记录一下这个案例@!



相关文章

发表评论

Comment form

(*) 表示必填项

还没有评论。

四川快乐12
返回顶部
  • 他是受了启发才明白这个道理。而这个道理是对的。两个人组合,必须要产生两个人接续,才能保持力量的延续。人口数量的衰退,一定是两种原因,一是战争,而是生产能力的提升 2019-02-09
  • 《游侠索罗》:票房失意之作的连锁反应 2019-02-04
  • 老干部同志,你是否愿意让别人骑在你头上拉丝拉尿?[哈哈] 2019-02-02
  • 库克最新采访:没兴趣竞选总统 将再花300亿造新园区 2019-02-02
  • 南宁实现全国文明城市“四连冠” 2019-01-30
  • 新一轮中美北京经贸谈判释放了什么信号 2019-01-28
  • 长治警方破获利用网络平台贩毒案 2019-01-28
  • [大笑]当然要付钱,你占用属于大家的资源,那怕是一根针都要付钱! 2019-01-28
  • 世界杯炸出第一个未来巨星!揭幕战造4球一夜成名 2019-01-25
  • 北京师范大学新闻传播学院执行院长、教育部长江学者特聘教授喻国明做客人民网 2019-01-25
  • 党媒《红网湘乡手机报》是如何做到接地气、聚人气的? 2019-01-19
  • 回复@看着就想笑:真有点赞机,还不点个百八十个赞 2019-01-07
  • 很深刻。当今城市化基本出于房地资本的繁衍需要与维持粗陋GDP的无奈,越来越显露其反动性。 2019-01-07
  • 各国球迷赴俄看球有人开拖拉机 有人想带鸡 2019-01-01
  • 亚太森博(山东)浆纸有限公司 2019-01-01
  • 570| 346| 994| 292| 52| 460| 606| 208| 680| 926|