我是mysql管理的初学者,所以我需要帮助编写查询以列出用户有权访问的特定数据库表。
答案 0 :(得分:0)
这是一个奇怪的愿望......
通常用户不应对表感兴趣。表是数据模型的技术方面,用户不应该看到。用户对存储和检索数据感兴趣。但他通常并且不应该知道数据是如何存储的。
无论如何:AFAIK没有这样的功能。你必须自己创造一些黑客。您可以查询数据库中的表列表。然后,您必须遍历该列表并逐个测试访问权限。
答案 1 :(得分:0)
看看mysql information_schema表。
19.14 INFORMATION_SCHEMA TABLE_PRIVILEGES表
TABLE_PRIVILEGES表提供有关表的信息 特权。此信息来自mysql.tables_priv grant 表
http://dev.mysql.com/doc/refman/5.0/en/table-privileges-table.html
和
6.2.2特权系统授权表
通常,您在mysql中操作授权表的内容 数据库间接使用GRANT和REVOKE等语句 设置帐户并控制每个帐户可用的权限。看到 第13.7.1节“账户管理声明”。这里的讨论 描述了授权表的基础结构以及如何实现 服务器在与客户交互时使用其内容。
http://dev.mysql.com/doc/refman/5.1/en/grant-table-structure.html