MySQL限制用户只注册一个数据库

kou*_*tuk 2 mysql database

我被困在要求是:

我已经在mysql中创建了新用户,其中包含插入,删除,更新,选择和创建权限,我想如果有人向这个新用户注册数据库,他应该只能从我的数据库列表中注册一个数据库....

限制新用户只从我的数据库列表中注册一个数据库....

谢谢

Fuz*_*zel 7

你在问脚本是怎么做的吗?在MySQL Admin中,您可以通过Database/Schema授予权限,用户只能连接到他至少拥有SELECT权限的数据库.

如果您想在没有GUI的情况下执行此操作,可以通过命令行执行此操作.从文档(http://dev.mysql.com/doc/refman/5.1/en/grant.html):

GRANT SELECT, INSERT ON mydb.* TO 'someuser'@'somehost';
Run Code Online (Sandbox Code Playgroud)

上面的命令在数据库"mydb"上为用户"someuser"授予SELECT和INSERT,该用户尝试从"somehost"连接数据库中包含的所有表.当然,您可以为更多详细信息设置权限,例如为单个表设置权限,或授予从任何主机连接的权限.

或者您是否正在寻找通过phpmyadmin执行此操作的方法?此外,您可以通过数据库或整体授予权限,但正如我所经历的那样,您必须仔细查看正确的,不要立即看到这一点,有时会偶然设置所有数据库的权限.

可能最好的方法是剥夺所有权利,然后从头开始,所以你不要错过任何删除(适用于MySQL 4.1.2及更新版本)

REVOKE ALL PRIVILEGES, GRANT OPTION FROM user 
Run Code Online (Sandbox Code Playgroud)