如何添加一个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 阅读 8 次 更新于 2025-07-20 21:41:49 我来答关注问题0
  • 在MySQL中创建新用户并授权,首先需要通过命令行或MySQL管理工具登录到MySQL服务器。接着,使用GRANT语句来授予新用户特定的权限。例如,若要创建一个新用户并赋予其对特定数据库和表的所有操作权限,可以使用如下命令:grant all privileges on 数据库名.* to '用户名'@'IP' identified by '密码';上述...

  • 1. 添加新用户 要添加新用户,我们需要使用MySQL的CREATE USER语句。下面是一个创建新用户的示例:CREATE USER ‘user1’@’localhost’ IDENTIFIED BY ‘password1’;这个语句创建了一个名为“user1”的新用户,其密码为“password1”,而“localhost”是指在本地...

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

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

  • /etc/init.d/sudo mysqld 为了添加新的MySQL用户并分配权限,可以按照以下步骤操作:使用以下命令登录MySQL:mysql -u root 之后,执行以下命令为新用户分配权限:grant 权限1,权限2,权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令';其中,权限1,权限2,权限n代表14个预定...

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

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

mySQL相关话题

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