Mysql撤销root用户的权限

时间:2018-01-03 09:45:26

标签: mysql heidisql

我需要在mySql中撤销root用户的权限。 root用户不应该在数据库中创建和删除表。

我检查了revoke命令但不知何故它对root用户不起作用。如果我创建了一个新用户并撤销了权限,那么它是否有效,我对root用户缺少什么,或者我们无法撤销对“root”的权限?

SHOW GRANTS FOR root@localhost;

- 显示

GRANT RELOAD, SHUTDOWN, PROCESS, FILE, SHOW DATABASES, SUPER, REPLICATION SLAVE, REPLICATION CLIENT, CREATE USER, CREATE TABLESPACE ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*7BB96B4D3E986612D96E53E62DBE9A38AAA40A5A'

GRANT INSERT, UPDATE, DELETE, CREATE, DROP, REFERENCES, INDEX, ALTER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EVENT, TRIGGER ON `%`.* TO 'root'@'localhost' WITH GRANT OPTION

GRANT PROXY ON ''@'' TO 'root'@'localhost' WITH GRANT OPTION

然后

REVOKE all on myDb.* from root@'%';
FLUSH PRIVILEGES;
  
    

用户'root'@'localhost'拒绝访问数据库'myDb'

  

1 个答案:

答案 0 :(得分:0)

我想,你不想这样做。 Root用户可以获得所有CRUD操作的所有权限,并创建新用户并授予他们权限。

如果您的动机是限制访问权限,请根据您的需要创建不同的用户。例如:您可能只希望用户阅读记录。这是一个安全的选择,因为您可能仅将该用户用于阅读目的。或者仅用于读取,写入和编辑权限。

修改

如果您仍想执行此操作,请查看此答案How can I restore the MySQL root user’s full privileges?。它可能会对你有帮助。