我在使用grant all on . to `user`@`%` with grant option爲用戶添加權限時發現,不可以對同一個用戶執行兩次該命令,第一次會成功,第二次就會失敗,提示:ERROR 1227 (42000): Access denied; you need (at least one of) the SYSTEM_USER privilege(s) for this operation。
但是當我用root取消其他用戶權限時,就會一直報這個錯誤。
show grants結果如下,有點不會看。
*************************** 1. row *************************** Grants for root@%: GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE, CREATE ROLE, DROP ROLE ON . TO `root`@`%` WITH GRANT OPTION *************************** 2. row *************************** Grants for root@%: GRANT ALL PRIVILEGES ON `db1`.* TO `root`@`%` WITH GRANT OPTION 2 rows in set (0.00 sec)
網上找了一下,暫時沒查到原因。迷茫。探究中。