代码改变世界

mysql root用户没有grant权限

2022-03-01 21:31  abce  阅读(2845)  评论(0编辑  收藏  举报

最近接手了几个库,root用户都没有grant权限。

1.root用户登录后没有授权的权限

mysql> grant insert on mysql.abce to 'myabc'@'127.0.0.1' ;
ERROR 1142 (42000): GRANT command denied to user 'root'@'H.hostname.com' for table 'abce'

2.查看用户的权限

mysql> show grants for root@'%';
+-------------------------------------------+
| Grants for root@%                         |
+-------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' |
+-------------------------------------------+
1 row in set (0.00 sec)

mysql> select host,user,Grant_priv from mysql.user where user='root';
+------+------+------------+
| host | user | Grant_priv |
+------+------+------------+
| %    | root | N          |
+------+------+------------+
1 row in set (0.00 sec)

mysql> 

常规情况下,root的权限是:

mysql> show grants for root@'localhost';
+---------------------------------------------------------------------+
| Grants for root@localhost                                           |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION |
| GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION        |
+---------------------------------------------------------------------+

  

为了省事,修改了一下表:添加权限

mysql> update mysql.user set Grant_priv="Y" where user="root" and host="%";
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0

mysql> commit;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)