文档首页
MySQL 9.0 参考手册
相关文档 下载本手册
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
手册页 (TGZ) - 258.2Kb
手册页 (Zip) - 365.3Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 9.0 参考手册  /  ...  /  迁移到密码验证组件

8.4.3.3 迁移到密码验证组件

注意

在 MySQL 9.0 中,validate_password 插件被重新实现为 validate_password 组件。 validate_password 插件已弃用;预计将在未来版本的 MySQL 中删除。

目前使用 validate_password 插件的 MySQL 安装应该迁移到使用 validate_password 组件。为此,请使用以下步骤。该步骤在卸载插件之前安装组件,以避免在没有密码验证的时间窗口内出现问题。 (组件和插件可以同时安装。在这种情况下,服务器尝试使用组件,如果组件不可用,则回退到插件。)

  1. 安装 validate_password 组件

    INSTALL COMPONENT 'file://component_validate_password';
  2. 测试 validate_password 组件以确保其按预期工作。如果您需要设置任何 validate_password.xxx 系统变量,您可以在运行时使用 SET GLOBAL 来完成。 (必须进行的任何选项文件更改将在下一步中执行。)

  3. 调整对插件系统和状态变量的任何引用,以引用相应的组件系统和状态变量。假设您之前使用类似于以下选项文件在启动时配置了插件

    [mysqld]
    validate-password=FORCE_PLUS_PERMANENT
    validate_password_dictionary_file=/usr/share/dict/words
    validate_password_length=10
    validate_password_number_count=2

    这些设置适用于插件,但必须修改以应用于组件。要调整选项文件,请省略 --validate-password 选项(它仅适用于插件,不适用于组件),并将系统变量引用从适用于插件的无点名称修改为适用于组件的带点名称

    [mysqld]
    validate_password.dictionary_file=/usr/share/dict/words
    validate_password.length=10
    validate_password.number_count=2

    对于在运行时引用 validate_password 插件系统和状态变量的应用程序,也需要进行类似的调整。将无点插件变量名更改为相应的带点组件变量名。

  4. 卸载 validate_password 插件

    UNINSTALL PLUGIN validate_password;

    如果 validate_password 插件是在服务器启动时使用 --plugin-load--plugin-load-add 选项加载的,请从服务器启动过程中省略该选项。例如,如果该选项在服务器选项文件中列出,请将其从文件中删除。

  5. 重新启动服务器。