一尘不染

让MySQL用户创建数据库,但只允许访问他们自己的数据库

mysql

我希望有 多个 MySQL用户能够发出类似的命令

CREATE DATABASE dbTest;

但是我也希望这些用户中的每一个都只能看到和访问他们 自己的 数据库。

我所能找到的就是如何由DBA创建数据库并将该数据库的特权授予特定用户:

GRANT ALL PRIVILEGES ON dbTest.* TO 'user';

或将所有数据库的特权授予用户:

GRANT ALL PRIVILEGES ON *.* TO 'user';

但是我也不想要,因为它需要扩展和安全。


阅读 488

收藏
2020-05-17

共1个答案

一尘不染

您可以使用

GRANT ALL PRIVILEGES ON `testuser\_%` .  * TO 'testuser'@'%';

授予用户testuser名称以开头的所有数据库的用户特权testuser_

这允许测试用户创建限制于以testuser_开头的名称的数据库

2020-05-17