我试图撤消MySQL数据库中特定表的选择特权。
数据库级别限制有效,但表级别无效。
当我写“表演资助”时
这就是我得到的:
| GRANT USAGE ON *.* TO 'rachit'@'localhost' IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19' |
| GRANT ALL PRIVILEGES ON `test123`.* TO 'rachit'@'localhost' |
| GRANT INSERT, UPDATE, DELETE ON `test123`.`names123` TO 'rachit'@'localhost'
如您所见,我想
在“ test123”数据库的“ names123”表上从rachit用户撤消选择特权,但是SELECT起作用。
我在下面附上了屏幕截图,以便于更好地理解。
https://ibb.co/GRtjXX7
最佳答案
如果您GRANT ALL ON test123.* TO 'rachit'@'localhost'
,则无法通过运行REVOKE ALL ON test123.* TO 'rachit'@'localhost'
删除一个表。
一些DBMS系统的DENY
选项专门用于拒绝对特定表的访问,但是mysql并非如此。
您可以考虑编写脚本并逐个授予对每个表的访问权限