如何在MySQL中创建用户并指定数据库管理权限?

avatar
作者
筋斗云
阅读量:0
在MySQL中,创建用户并指定数据库的权限可以使用以下SQL语句:,,``sql,CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';,GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'主机名';,FLUSH PRIVILEGES;,`,,将上述代码中的用户名主机名密码数据库名`替换为实际的值。

MySQL建用户指定数据库

如何在MySQL中创建用户并指定数据库管理权限?

创建用户与数据库

1、创建新用户

使用CREATE USER 语句来创建新用户。

```sql

CREATE USER 'testUser'@'localhost' IDENTIFIED BY 'password';

```

在高版本数据库中,可以使用以下命令:

```sql

CREATE USER 'testUser'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

```

% 表示用户可以从任何主机登录,localhost 表示只能从本地主机登录。

2、创建数据库

使用CREATE DATABASE 语句来创建新的数据库。

```sql

CREATE DATABASE testDB;

```

3、赋予权限

使用GRANT 语句为用户赋予特定数据库的权限。

```sql

GRANT ALL PRIVILEGES ON testDB.* TO 'testUser'@'localhost';

```

刷新权限使更改生效:

```sql

FLUSH PRIVILEGES;

```

4、查看用户权限

使用SHOW GRANTS 语句查看用户的权限:

```sql

SHOW GRANTS FOR 'testUser'@'localhost';

```

5、删除用户

如何在MySQL中创建用户并指定数据库管理权限?

使用DROP USER 语句删除用户:

```sql

DROP USER 'testUser'@'localhost';

```

刷新权限使更改生效:

```sql

FLUSH PRIVILEGES;

```

6、修改用户密码

使用ALTER USER 语句修改用户密码:

```sql

ALTER USER 'testUser'@'localhost' IDENTIFIED BY 'new_password';

```

或者:

```sql

SET PASSWORD FOR 'testUser'@'localhost' = PASSWORD('new_password');

```

刷新权限使更改生效:

```sql

FLUSH PRIVILEGES;

```

7、撤销权限

使用REVOKE 语句撤销用户的权限:

```sql

REVOKE ALL PRIVILEGES ON testDB.* FROM 'testUser'@'localhost';

```

8、删除数据库

使用DROP DATABASE 语句删除数据库:

```sql

DROP DATABASE testDB;

```

如何在MySQL中创建用户并指定数据库管理权限?

9、禁用和启用用户

使用ALTER USER 语句禁用用户:

```sql

ALTER USER 'testUser'@'localhost' ACCOUNT LOCK;

```

使用UNLOCK 语句启用用户:

```sql

ALTER USER 'testUser'@'localhost' ACCOUNT UNLOCK;

```

10、重命名用户

使用RENAME USER 语句重命名用户:

```sql

RENAME USER 'testUser'@'localhost' TO 'newUser'@'localhost';

```

FAQs(常见问题解答)

1、如何创建一个只能访问特定数据库的用户?

创建一个新用户并赋予其对特定数据库的所有权限,创建一个名为restrictedUser 的用户,只允许访问restrictedDB 数据库:

```sql

CREATE USER 'restrictedUser'@'localhost' IDENTIFIED BY 'password';

GRANT ALL PRIVILEGES ON restrictedDB.* TO 'restrictedUser'@'localhost';

FLUSH PRIVILEGES;

```

2、如何撤销用户的权限?

使用REVOKE 语句可以撤销用户的权限,撤销restrictedUserrestrictedDB 数据库的所有权限:

```sql

REVOKE ALL PRIVILEGES ON restrictedDB.* FROM 'restrictedUser'@'localhost';

```


    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!