mysql中怎么给用户happy授予 user和数据库中的权限
时间: 2024-03-11 16:48:14 浏览: 19
您可以使用以下命令在MySQL中授予用户happy对数据库和表的权限:
首先,登录到MySQL服务器:
```
mysql -u root -p
```
然后,创建一个新用户并设置密码:
```
CREATE USER 'happy'@'localhost' IDENTIFIED BY 'password';
```
接下来,授予用户happy对数据库和表的权限:
```
GRANT SELECT, INSERT, UPDATE, DELETE ON database_name.* TO 'happy'@'localhost';
```
其中,database_name指的是您要授权访问的数据库名称,*表示所有表。
最后,刷新MySQL权限:
```
FLUSH PRIVILEGES;
```
这样,用户happy就可以访问指定的数据库和表了。
相关问题
将gradem数据库中student表的删除权限授予用户User。
在MySQL中,授权(GRANT)是指将某些特定的权限授予给指定的用户或用户组。可以使用GRANT语句来授权。具体步骤如下:
1. 连接到MySQL数据库,并以具有授权权限的用户登录。
2. 执行以下SQL语句,将删除权限授予给用户User:
```
GRANT DELETE ON gradem.student TO 'User'@'%';
```
其中,DELETE表示授予的权限为删除,gradem.student表示要授予权限的表,User表示要授权的用户,%表示可以从任何IP地址连接到MySQL服务器。
如果要授予多个权限,可以在GRANT语句中使用逗号分隔,例如:
```
GRANT SELECT, INSERT, UPDATE, DELETE ON gradem.student TO 'User'@'%';
```
这样就将查询、插入、更新和删除权限都授予给了用户User。
MySQL中如何授予和收回权限
在MySQL中,授予和收回权限可以通过GRANT和REVOKE命令实现。具体步骤如下:
1. 授予权限
授予权限的命令格式为:
```
GRANT privileges ON database_name.table_name TO 'user_name'@'host_name' IDENTIFIED BY 'password';
```
其中,privileges表示要授予的权限,可以是ALL PRIVILEGES表示授予所有权限,也可以是SELECT、INSERT、UPDATE等单个权限;database_name和table_name表示要授予权限的数据库和数据表,如果是所有数据库和数据表,可以使用 * ; user_name和host_name表示要授予权限的用户和主机,IDENTIFIED BY 'password'表示用户的密码,可以省略。
例如,授予用户test1在localhost上对mydb数据库的所有权限,命令如下:
```
GRANT ALL PRIVILEGES ON mydb.* TO 'test1'@'localhost' IDENTIFIED BY 'password';
```
2. 收回权限
收回权限的命令格式为:
```
REVOKE privileges ON database_name.table_name FROM 'user_name'@'host_name';
```
其中,privileges、database_name、table_name、user_name和host_name的含义与授予权限相同。
例如,收回用户test1在localhost上对mydb数据库的所有权限,命令如下:
```
REVOKE ALL PRIVILEGES ON mydb.* FROM 'test1'@'localhost';
```
注意:收回权限只能收回已经授予的权限,如果用户没有被授予该权限,则无法收回。