Error number: 3671; Symbol: ER_PASSWORD_EXPIRATION_NOT_SUPPORTED_BY_AUTH_METHOD; SQLSTATE: HY000
Message: The selected authentication method %.*s does not support password expiration
以内
错误说明:
ER_PASSWORD_EXPIRATION_NOT_SUPPORTED_BY_AUTH_METHOD错误号367是MySQL的通用错误。它发生的原因是密码过期插件不支持指定的认证方法, 并要求更改为支持密码过期的认证方法。 在MySQL 8.0中,此错误号等价于ER_NOT_SUPPORTED_AUTH_MODE错误号545。
ER_PASSWORD_EXPIRATION_NOT_SUPPORTED_BY_AUTH_METHOD错误号367会在MySQL启动时显示,当MySQL尝试使用必须更改为支持密码过期的认证方法时,会提示此错误。
解决方法:
此ER_PASSWORD_EXPIRATION_NOT_SUPPORTED_BY_AUTH_METHOD错误号367会发生在MySQL尝试使用与密码过期插件不兼容的认证方法时,处理此错误号367最简单的方法是更改为支持密码过期的认证方法,例如改为mysql_native_password或caching_sha2_password。 可以通过使用ALTER USER语句来更改认证方法:
ALTER USER ‘sample_username’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘new_password’;
请注意,上述语句将在执行时要求您输入旧密码。因此,如果你不记得旧密码,你需要重置密码:
SET PASSWORD FOR ‘sample_username’@’localhost’ = PASSWORD(‘NEW_PASSWORD’);
最后,请确保MySQL服务器启用并正确配置了插件,以便正确处理密码过期:
INSTALL PLUGIN validate_password SONAME ‘validate_password.so’;