mysql - MySQL中如何设置表级权限

标签 mysql mariadb privileges

我正在尝试撤销 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' 

正如你在上面看到的,我想要

撤销rachit用户对“test123”数据库的“names123”表的选择权限,但SELECT正在运行。

为了更好地理解,我在下面附上了屏幕截图。 https://ibb.co/GRtjXX7

最佳答案

如果您GRANT ALL ON test123.* TO 'rachit'@'localhost',您无法通过运行REVOKE ALL ON test123.* TO 'rachit'@'localhost' 来删除一个表.

一些 DBMS 系统专门使用 DENY 选项专门拒绝对特定表的访问,但 mysql 的情况并非如此。

您可以考虑编写脚本并一一授予对每个表的访问权限

关于mysql - MySQL中如何设置表级权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54657394/

相关文章:

mysql - 优化地理搜索查询

postgresql - 我是否需要将 ALL 授予 PostgreSQL 9.3 数据库中某个表的所有者?

ORACLE PL/SQL - 授予/撤销权限

mysql - 触发器未在 Mysql 中创建

mysql - NodeJS MySQL 中的 DatabaseController 与 Typescript

docker build 在 'Downloading mariadb' 失败

mysql - Maria-db并发插入数据丢失问题

php - 当数据库发生变化时自动更改 html 项目

mysql - Php 随机化的概率为 %

php - mysqli 的好处是否值得重写一个大型的工作系统?