从用户隐藏数据库,同时允许用户查询它

时间:2013-03-01 17:26:46

标签: mysql database phpmyadmin

我希望有人可以帮我解决mySQL / phpMyAdmin问题。 (我甚至不知道是否可能......)

问题在于: 我有2个数据库:DB1和DB2 我有一个用户DB1user。此用户具有对DB1的完全访问权限,并具有对DB2中特定表的选择访问权限。 我希望有一种方法可以将DB2隐藏起来。即当用户输入'SHOW DATABASES;'时,我希望该用户只能看到DB1。但是,当用户键入'SELECT * FROM DB2.TABLE1;'时,他应该看到他的查询结果。

这可能吗?可行?

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

这两个查询将用户限制为单个数据库,因此用户只能查看,更新和删除该单个数据库中的表:

将USER替换为MySQL用户名

将USERDATABASE替换为您希望用户有权访问的单个MySQL数据库。

REVOKE ALL PRIVILEGES,GRANT OPTION from USER; 

GRANT ALL ON USERDATABASE.* TO 'USER';

答案 1 :(得分:0)

您是否尝试使用phpMyAdmin中的Privileges页面,您可以在其中创建用户并限制他们访问特定数据库以及操作?