如何添加一个mysql用户并给予权限?

MySQL 8.0版本支持:default_password_lifetime(密码有效期,默认为0或NULL,表示密码永久有效)、password_history(历史密码可重用的循环,表示记录历史上前多少次密码不允许被重复使用)、password_reuse_interval(指定历史密码要经过多长时间才能被重用,单位为天)。在my.cnf配置后,创建用户默认属性不...
如何添加一个mysql用户并给予权限?
添加用户并赋予权限是MySQL管理中的基本操作,具体步骤可能在不同版本的MySQL中略有差异。然而,下一步通常需要考虑的是如何增强用户的安全性,以防止潜在的威胁。

客户提出的需求,基于安全的角度,要求对MySQL进行安全加固。具体需求如下:用户密码管理。

实现上述需求,主要涉及三个关键方面:密码校验组件、连接控制插件、以及密码变更策略配置。以下是各功能的详细配置指导:

1. **密码校验组件配置**:MySQL 5.7版本支持的密码校验插件,安装和配置方式在不同版本间略有差异。在MySQL 8.0版本中,具体操作步骤可参考官方文档。

2. **连接控制插件配置**:连接控制插件在MySQL 5.7和8.0版本中均以插件形式提供,配置方法大致相同。在MySQL 8.0版本中,操作步骤请参考官方文档。

3. **密码变更策略配置**:MySQL支持在mysql.user表中配置密码变更策略,包括默认密码有效期(默认为0或NULL)、密码历史循环(表示历史密码的重复使用限制)和密码重用间隔(指定两次使用同一密码的最短时间)。在MySQL 5.7和8.0版本中,配置细节有所差异,需参照官方文档中的CREATE USER和ALTER USER语法。

配置参数含义如下:

MySQL 5.7版本下仅支持:default_password_lifetime(密码有效期,默认为0或NULL,表示密码永久有效)。

MySQL 8.0版本支持:default_password_lifetime(密码有效期,默认为0或NULL,表示密码永久有效)、password_history(历史密码可重用的循环,表示记录历史上前多少次密码不允许被重复使用)、password_reuse_interval(指定历史密码要经过多长时间才能被重用,单位为天)。

在my.cnf配置后,创建用户默认属性不生效的问题,已被识别为非Bug,需正确理解参数含义。关于password_history和password_reuse_interval参数的使用,实际只有password_reuse_interval参数有效,这也已在官方反馈中得到确认。2024-11-10
mengvlog 阅读 32 次 更新于 2025-09-10 10:10:45 我来答关注问题0
  • 1. **密码校验组件配置**:MySQL 5.7版本支持的密码校验插件,安装和配置方式在不同版本间略有差异。在MySQL 8.0版本中,具体操作步骤可参考官方文档。2. **连接控制插件配置**:连接控制插件在MySQL 5.7和8.0版本中均以插件形式提供,配置方法大致相同。在MySQL 8.0版本中,操作步骤请参考官方...

  • 在MySQL中创建新用户并授权,首先需要通过命令行或MySQL管理工具登录到MySQL服务器。接着,使用GRANT语句来授予新用户特定的权限。例如,若要创建一个新用户并赋予其对特定数据库和表的所有操作权限,可以使用如下命令:grant all privileges on 数据库名.* to '用户名'@'IP' identified by '密码';上述...

  • mysql> CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';一旦成功执行上述命令,MySQL将为该用户创建一个记录,并存储在名为"user"的表中,此表位于"mysql"数据库内,包括加密的密码、权限和资源限制等详细信息。为了确认用户是否创建成功,可以执行以下查询命令:mysql> SELECT host, user...

  • 一、新建用户 老板提出需求:创建用户名为joytom,密码为123321,支持任意远程主机访问。小王熟练地执行了创建用户的命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password';,并检查了创建结果。接着,使用另一台服务器远程登录数据库,验证了joytom用户确实可以访问。二、授权 完成用户创建后,老...

  •  翡希信息咨询 MySQL用户管理:添加用户、授权、删除用户

    一、添加用户 以root用户登录MySQL数据库。使用CREATE USER语句创建新用户。例如,创建用户名为testnew,密码也为testnew的用户,执行命令:CREATE USER testnew IDENTIFIED BY 'testnew';。二、授权 使用GRANT语句为新用户授权。例如,授权testnew用户对testnewDb数据库的所有操作权限,执行命令:GRANT ALL...

檬味博客在线解答立即免费咨询

mySQL相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部