MySQL 参数解析 password_require_current

2023年 8月 15日 87.0k 0

password_require_current 是 MySQL 8.0.13 版本引入的新参数,该参数定义了一个密码修改的全局策略,如果该参数设置为ON,在修改账号的密码时,会要求指定账号当前使用的密码。简单来说,就是设置新密码时,需要给出旧密码。

password_require_current:

  • 作用范围:Global
  • 动态修改:Yes
  • 取值范围:ON,OFF
  • 默认值:OFF

来看下面的示例,password_require_current=ON设置下,修改密码没有指定旧密码,报错,使用replace子句指定旧密码,再次执行,成功。

mysql> alter user app@'%' identified by 'cC@12345678';
ERROR 3892 (HY000): Current password needs to be specified in the REPLACE clause in order to change it.

mysql> alter user app@'%' identified by 'cC@12345678' replace 'bB@12345678';
Query OK, 0 rows affected (0.01 sec)

除了使用参数password_require_current来控制全局的密码修改策略外,还可以在create user和alter user语句中,使用password require current子句单独控制某个用户的密码修改策略,如下所示:

  • create user app1@'%' identified by 'aA@12345678' password require current;
  • create user app2@'%' identified by 'aA@12345678' password require current optional;
  • create user app3@'%' identified by 'aA@12345678' password require current default;

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论