欢迎访问宙启技术站
智能推送

怎么在MySQL 8.0.18中给数据库添加用户和赋权

发布时间:2023-05-15 02:19:57

MySQL是一种流行的关系型数据库管理系统。在MySQL中,建立用户并授予权限是一个基本的操作。

本文将介绍如何在MySQL 8.0.18中创建用户并授予权限。

创建用户

使用root用户登录MySQL后,可以使用以下语法创建用户。

CREATE USER '用户名'@'IP地址' IDENTIFIED BY '密码';

- 用户名:要创建的用户名。

- IP地址:授权用户可以从哪个IP地址访问数据库。如果要允许从任何地址访问,请使用%。如果只允许从特定IP地址访问,请使用该地址。

- 密码:用户的密码。

例如,要创建一个名为John的用户,该用户可以从任何地址访问数据库并使用“abcd1234”作为密码,请使用以下语句。

CREATE USER 'John'@'%' IDENTIFIED BY 'abcd1234';

如果要创建一个访问MySQL的特定IP地址的用户,请使用以下命令。

CREATE USER 'John'@'192.168.0.100' IDENTIFIED BY 'abcd1234';

授权

授权涉及赋予用户特定的权限以访问数据库和数据表。

要授权用户,请使用GRANT命令。以下语法向用户授予所有权限。

GRANT ALL PRIVILEGES ON *.* TO '用户名'@'IP地址';

要向用户授予特定权限,请使用以下语法。

GRANT 权限1,权限2,...,权限n ON 数据库.数据表 TO '用户名'@'IP地址';

例如,要授权John用户访问数据库mytest中名为city的表,请使用以下命令。

GRANT SELECT, INSERT, UPDATE, DELETE ON mytest.city TO 'John'@'%';

如果你要赋予用户具有数据库操作权限,使用以下命令。

GRANT CREATE, DROP, ALTER, INDEX, REFERENCES, CREATE TEMPORARY TABLES, LOCK TABLES ON 数据库名.* TO '用户名'@'IP地址';

例如,要授权John用户使用database1中的创建表、更新表和删除表的权限,请使用以下命令。

GRANT CREATE, DROP, ALTER ON database1.* TO 'John'@'%';

撤销授权

需要撤销授权时,可以使用REVOKE命令。以下是REVOKE授权的语法。

REVOKE 权限 ON 数据库.数据表 FROM '用户名'@'IP地址';

例如,要从John用户中撤消对mytest.city的选择权限,请使用以下命令。

REVOKE SELECT ON mytest.city FROM 'John'@'%';

删除用户

删除用户可以使用DROP USER命令。以下是DROP USER命令的语法。

DROP USER '用户名'@'IP地址';

例如,要删除名为John的用户,请使用以下命令。

DROP USER 'John'@'%';

总结

在MySQL 8.0.18中,创建用户和授予权限是管理数据库的基本操作之一。使用CREATE USER、GRANT和REVOKE命令可以轻松地创建和管理用户,以便控制数据库和数据表的访问权限。