MySQL如何创建用户

本文介绍了在MySQL中创建普通用户并授予权限的三种方法:使用CREATEUSER、GRANT语句以及直接操作MYSQL用户表。在创建用户时遇到密码策略问题,可以通过调整验证策略解决。GRANT语句可以同时创建用户并授权,而直接操作USER表虽然可行但存在风险。最后提到了不同MySQL版本中的一些注意事项。
摘要由CSDN通过智能技术生成

在数据库的使用过程中,考虑的数据的安全性。通常root用户的密码是不对外提供的。但由于项目的需要,部分人员需要数据库的部分权限,这个时候就需要创建普通并提供相关权限。

创建普通用户,必须有相应的权限来执行创建操作。MySQL提供了三种创建普通的用户方法,分别是create user,grant 和直接操作mysql授权表。如下:
在这里插入图片描述

一、 使用CREATE USER 语句创建新用户
譬如,当前有一个用户WZG申请访问数据库权限,于是数据库管理员并新建了一个用户,用户名:WZG,密码:QASKY1234,主机名:LOCALHOST

CREATE USER 'WZG'@'LOCALHOST' IDENTIFIED BY 'QASKY123';

创建失败,提示当前密码不满足策略要求
在这里插入图片描述
修改密码策略:(想想可参阅:CentOS7系统安装MySQL指导手册)

SELECT @@VALIDATE_PASSWORD_POLICY;

在这里插入图片描述 set global validate_password_policy = 0;
在这里插入图片描述
GRANT ALL ON *.* TO 'WZG'@'LOCALHOST';
在这里插入图片描述

二、 使用GRANT 语句创建新用户
使用CREATE USER 语句创建账户后在USER表中新增一条记录,但是新创建的用户没有任何权限,还需要通过GRANT语句进行赋权。而使用GRANT语句不仅可以创建新用户,还可以在创建的同时对用户授权。以上述为例:

grant select,insert on *.* to 'wzg1'@'localhost' identified by 'qasky1234';

在这里插入图片描述

三、 直接操作MYSQL用户表
使用CREATE和GRANT的本质都是像USER表中插入一个用户。所以也可以直接在USER表中插入一条数据。

insert into user(host,user,authentication_string) values('localhost','wzg2',password('qasky1234'));

在这里插入图片描述
由于5.1版本之后通过insert创建用户会提示上述错误,不推荐使用该方法。如果使用,给该字段进行赋值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

闲小憨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值