授予用户只查看MySQL视图的权限?

要授予用户仅查看MySQL视图的权限,请使用以下语法

GRANT SELECT ON yourDatabaseName.yourViewName TO ' yourUserName@'yourLocalHost';

首先,您需要显示表中的所有视图名称。语法如下-

SHOW FULL TABLES IN yourDatabaseName WHERE TABLE_TYPE LIKE 'VIEW';

现在实现上述语法以显示数据库中的所有视图。在这里,我正在使用数据库名称“ test”。查询如下-

mysql> SHOW FULL TABLES IN test WHERE TABLE_TYPE LIKE 'VIEW';

以下是输出-

+-------------------------------+------------+

| Tables_in_test                | Table_type |

+-------------------------------+------------+

| empidandempname_view          | VIEW       |

| empinfoview                   | VIEW       |

| lookuptable                   | VIEW       |

| view_student                  | VIEW       |

| viewemployeeidandemployeename | VIEW       |

+-------------------------------+------------+

5 rows in set (0.00 sec)

显示MySQL.user表中的所有用户名和主机。查询如下-

mysql> select user,host from MySQL.user;

以下是输出-

+------------------+-----------+

| user             | host      |

+------------------+-----------+

| Manish           | %         |

| User2            | %         |

| mysql.infoschema | %         |

| mysql.session    | %         |

| mysql.sys        | %         |

| root             | %         |

| Adam Smith       | localhost |

| User1            | localhost |

| am               | localhost |

+------------------+-----------+

9 rows in set (0.00 sec)

授予用户和主机权限。现在,使用数据库“ test”,视图为“ viewemployeeidandemployeename”。要将其授予'Adam Smith'@'localhost',以下是查询-

mysql> GRANT SELECT ON test. viewemployeeidandemployeename TO ' Adam Smith'@'localhost';

以上是 授予用户只查看MySQL视图的权限? 的全部内容, 来源链接: utcz.com/z/348968.html

回到顶部