mysql,使新用户只能读取当前表,并且可以插入&更新到新表

时间:2018-05-17 09:50:01

标签: mysql database grant

我的数据库中有五个表,现在我创建了user1,但我希望这一点成真:

user1只能读取当前的五个表。

user1可以创建表格,并插入&更新到新表。

我该如何做到这一点?

1 个答案:

答案 0 :(得分:0)

你应该考虑:

GRANT ALL PRIVILEGES ON your_db_name.table_1 to 'your_user_name'@'%';
GRANT ALL PRIVILEGES ON your_db_name.table_2 to 'your_user_name'@'%';
GRANT ALL PRIVILEGES ON your_db_name.table_3 to 'your_user_name'@'%';
GRANT ALL PRIVILEGES ON your_db_name.table_4 to 'your_user_name'@'%';
GRANT ALL PRIVILEGES ON your_db_name.table_5 to 'your_user_name'@'%';

到目前为止,your_user_name只能访问这五个表。 Grant下面允许将指定数据库中的表创建为" user_name"

GRANT CREATE ON db_name.* TO 'user_name'@'%';

用户创建表后,您必须根据需要更新权限。

GRANT CREATE ON db_name.* TO 'user_name'@'%';
GRANT SELECT, INSERT, UPDATE ON db_name.table_1 TO 'user_name'@'%';
GRANT SELECT, INSERT, UPDATE ON db_name.table_2 TO 'user_name'@'%';