本节介绍如何安装
validate_password
密码验证插件。有关安装插件的一般信息,请参阅
第 5.5.1 节,“安装和卸载插件”。
如果您使用
MySQL Yum 存储库安装 MySQL 5.7 ,
MySQL SLES 存储库或
Oracle 提供的 RPM 包validate_password
在您首次启动 MySQL 服务器后默认启用
。
为了被服务器使用,插件库文件必须位于MySQL插件目录(由plugin_dir
系统变量命名的目录)中。plugin_dir
如有必要,通过在服务器启动时
设置值来配置插件目录位置
。
插件库文件的基本名称是
validate_password
. 文件名后缀因平台而异(例如,.so
对于 Unix 和类 Unix 系统,.dll
对于 Windows)。
要在服务器启动时加载插件,请使用
--plugin-load-add
选项命名包含它的库文件。使用这种插件加载方法,每次服务器启动时都必须给出该选项。例如,将这些行放在服务器
my.cnf
文件中,
.so
根据需要调整平台的后缀:
[mysqld]
plugin-load-add=validate_password.so
修改my.cnf
后重启服务器使新设置生效。
或者,要在运行时加载插件,请使用此语句,.so
根据需要调整平台的后缀:
INSTALL PLUGIN validate_password SONAME 'validate_password.so';
INSTALL PLUGIN
加载插件,并将其注册到mysql.plugins
系统表中,以便为后续的每次正常服务器启动加载插件,而无需
--plugin-load-add
.
要验证插件安装,请检查
INFORMATION_SCHEMA.PLUGINS
表格或使用SHOW PLUGINS
语句(请参阅第 5.5.2 节,“获取服务器插件信息”)。例如:
mysql> SELECT PLUGIN_NAME, PLUGIN_STATUS
FROM INFORMATION_SCHEMA.PLUGINS
WHERE PLUGIN_NAME LIKE 'validate%';
+-------------------+---------------+
| PLUGIN_NAME | PLUGIN_STATUS |
+-------------------+---------------+
| validate_password | ACTIVE |
+-------------------+---------------+
如果插件无法初始化,请检查服务器错误日志以获取诊断消息。
如果插件之前注册过
INSTALL PLUGIN
或者加载过
--plugin-load-add
,可以使用--validate-password
服务器启动时的选项来控制插件的激活。例如,要在启动时加载插件并防止它在运行时被删除,请使用以下选项:
[mysqld]
plugin-load-add=validate_password.so
validate-password=FORCE_PLUS_PERMANENT
如果希望防止服务器在没有密码验证插件的情况下运行,请使用
or
--validate-password
的值,如果插件未成功初始化,则强制服务器启动失败。
FORCE
FORCE_PLUS_PERMANENT