mysql將某數據庫的全部權限賦給某用戶,提示1044錯誤Access denied


 

mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database 'zabbix'

 

 

查看root用戶有沒有授權權限

 

mysql> select host,user,grant_priv,Super_priv from mysql.user;
+-----------+----------+------------+------------+
| host      | user     | grant_priv | Super_priv |
+-----------+----------+------------+------------+
| 127.0.0.1 | root     | Y          | Y          |
| localhost | root     | N          | Y          |
| 10.0.3.%  | repluser | N          | N          |
+-----------+----------+------------+------------+
3 rows in set (0.00 sec)


可以看到localhost的grant_priv的值為N,也就是說root用戶不能授權給其他用戶,所以我們需要把這個值改為Y

 

 

mysql> update mysql.user set grant_priv='N' where host='localhost';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1  Changed: 0  Warnings: 0

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


改完之后最好重啟一下服務器(我沒重啟,所以還是報那個錯,重啟后就正常了)

 

 

mysql> select user,host,Grant_priv,super_priv from mysql.user;
+----------+-----------+------------+------------+
| user     | host      | Grant_priv | super_priv |
+----------+-----------+------------+------------+
| root     | 127.0.0.1 | Y          | Y          |
| root     | localhost | Y          | Y          |
| repluser | 10.0.3.%  | N          | N          |
+----------+-----------+------------+------------+
3 rows in set (0.00 sec)

mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
Query OK, 0 rows affected (0.00 sec)

mysql> 



 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM