阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

创建新用户和授予MySQL中的权限教程

34次阅读
没有评论

共计 1217 个字符,预计需要花费 4 分钟才能阅读完成。

导读 MySQL 是一个开源数据库管理软件,可帮助用户存储,组织和以后检索数据。它有多种选项来授予特定用户在表和数据库中的细微的权限 – 本教程将简要介绍一些选项。
如何创建新用户

在 MySQL 的教程的第 1 部分中,我们做了所有在 MySQL 中编辑 root 用户,拥有完全访问所有的数据库。但是,在可能需要更多限制的情况下,可以使用自定义权限创建用户。

让我们从在 MySQL shell 中创建一个新用户开始:

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

可悲的是,此时 newuser 没有权限对数据库执行任何操作。事实上,如果 newuser 甚至尝试登录(使用密码,密码),他们将无法访问 MySQL shell。

因此,首先要做的是为用户提供访问他们将需要的信息的权限。

GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost';

此命令中的星号分别表示它们可以访问的数据库和表(这些命令允许用户在所有数据库和表中读取,编辑,执行和执行所有任务)。

一旦您确定了要为新用户设置的权限,请务必重新加载所有权限。

FLUSH PRIVILEGES;

您的更改现已生效。

如何授予不同的用户权限

以下是用户可以享受的其他常见可能权限的简短列表。

ALL PRIVILEGES - 正如我们前面所看到的,这将允许 MySQL 用户访问指定的数据库(或者如果系统中没有选择数据库)CREATE- 允许他们创建新的表或数据库
DROP- 允许他们删除表或数据库
DELETE- 允许他们从表中删除行
INSERT- 允许它们向表中插入行
SELECT- 允许他们使用 Select 命令来读取数据库
UPDATE- 允许他们更新表行
GRANT OPTION - 允许他们授予或删除其他用户的权限 

要向特定用户提供权限,可以使用此框架:

GRANT [type of permission] ON [database name].[table“”not found /]
TO‘[username]’@'localhost’;

如果要向其授予对任何数据库或任何表的访问权限,请确保在数据库名称或表名称的地方放置星号(*)。

每次更新或更改权限时,请务必使用 Flush Privileges 命令。

如果您需要撤消权限,则结构与授予的结构几乎相同:

REVOKE [type of permission] ON [database name].[table“”not found /]
FROM‘[username]’@‘localhost’;

正如您可以使用 DROP 删除数据库一样,您可以使用 DROP 完全删除用户:

DROP USER‘demo’@‘localhost’;

要测试您的新用户,请通过键入注销

quit

并使用此命令在终端中重新登录:

mysql -u [username]-p

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-10-21发表,共计1217字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中