我在 MySQL 中设置了一些表特定的授权,但当我以该 MySQL 用户身份登录时,它仍然拥有对所有表的完全访问权限。我想清除所有 GRANT 并重新开始。
我正在运行 Debian Linux 服务器,使用如下命令行命令:
GRANT INSERT on database.someTable TO 'everyone'@'localhost';
(乘以 30 左右。)
尝试使用下面的单个命令撤销授权只会产生一些错误,提示没有该类型的授权可以删除:
REVOKE all on database.* FROM 'everyone'@'localhost';
我是否必须尝试对授权进行逆向工程并逐一撤销它们?
答案1
SHOW GRANTS FOR 'user'@'localhost';
将显示针对给定用户应用的所有授予命令,然后您可以将它们更改为撤销以撤消它们。
一般来说,在测试之前运行FLUSH PRIVILEGES;
也是一个好主意。