MySql 5.7 用户基本操作

一、添加用户

使用 CREATE USER 命令

CREATE USER 'username'@'host' IDENTIFIED BY 'password';         

PS:

username - 你将创建的用户名,

host - 指定该用户在哪个主机上可以登陆,此处的"localhost",是指该用户只能在本地登录,不能在另外一台机器上远程登录,如果想远程登录的话,将"localhost"改为"%",表示在任何一台电脑上都可以登录;也可以指定某台机器可以远程登录;

password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器。

 

二、授权

使用GRANT命令

GRANT privileges ON databasename.tablename TO 'username'@'host'

PS:

privileges - 用户的操作权限,如SELECT , INSERT , UPDATE 等(详细列表见该文最后面).如果要授予所的权限则使用ALL.;

databasename - 数据库名,

tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.

也可以在创建用户跟授权一起

GRANT privileges ON databasename.tablename TO 'username'@'host'  IDENTIFIED BY 'password';

FLUSH PRIVILEGES;

查看授权

SHOW GRANTS FOR 'username'@'host';

取消授权

       REVOKE privilege ON databasename.tablename FROM 'username'@'host';

PS

撤销权限时,允许语句中含有用户未拥有的权限。

 

三、删除用户

使用 DROP USER命令

DROP USER 'username'@'host';

 

四、修改用户名

RENAME USER 'username'@'host' TO 'newusername'@'newhost'

 

五、修改密码

1、使用 ALTER USER命令(文档推荐方式)

ALTER USER 'username' IDENTIFIED BY 'newpassword';

修改当前用户

ALTER USER USER() IDENTIFIED BY 'newpassword';

使密码过期

ALTER USER 'username' IDENTIFIED BY 'newpassword' PASSWORD EXPIRE;

使密码从不过期

ALTER USER 'username' IDENTIFIED BY 'newpassword' PASSWORD EXPIRE NEVER;

按默认设置过期时间

ALTER USER 'username' IDENTIFIED BY 'newpassword' PASSWORD EXPIRE DEFAULT;

指定过期间隔

ALTER USER 'username' IDENTIFIED BY 'newpassword' PASSWORD EXPIRE INTERVAL 90 DAY;

2、使用 SET PASSWORD命令

默认加密

SET PASSWORD FOR 'username' = 'newpassword'

PASSWORD()函数加密

SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');

使用PASSWORD('auth_string')的方式已经被废弃,在以后的版本会把它移除,所以不建议使用它来修改密码。

 

密码校验规则

MySql数据库从5.7的版本开始对密码进行了严格的限制,因为他默认安装了一个validate_password的插件,我们也可以将他禁用掉

查看插件列表,找到validate_password,状态若为AVTIVE便是启用状态

SHOW PLUGINS;

我们可以查看它的校验规则

SHOW VARIABLES LIKE 'validate%';

  • validate_password_length 8                             # 密码的最小长度,此处为8。
  • validate_password_mixed_case_count 1         # 至少要包含小写或大写字母的个数,此处为1。
  • validate_password_number_count 1                # 至少要包含的数字的个数,此处为1。
  • validate_password_policy MEDIUM                 # 强度等级,其中其值可设置为0、1、2。分别对应:

【0/LOW】:只检查长度。
           【1/MEDIUM】:在0等级的基础上多检查数字、大小写、特殊字符。
           【2/STRONG】:在1等级的基础上多检查特殊字符字典文件,此处为1。

  • validate_password_special_char_count 1         # 至少要包含的个数字符的个数,此处为1。

下面我们来把他禁用掉,在my.cnf文件中修改

[mysqld]
validate_password=off

再次“SHOW PLUGINS” 我们会看到validate_password状态已经为DISABLED,

 

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值