Documentation Home

5.6.7.1 安装克隆插件

本节介绍如何安装和配置克隆插件。对于远程克隆操作,克隆插件必须安装在捐赠者和接受者 MySQL 服务器实例上。

有关安装或卸载插件的一般信息,请参阅第 5.6.1 节,“安装和卸载插件”

为了被服务器使用,插件库文件必须位于MySQL插件目录(由plugin_dir系统变量命名的目录)中。如有必要,设置 plugin_dirat server startup 的值以告知服务器插件目录位置。

插件库文件的基本名称是 mysql_clone.so. 文件名后缀因平台而异(例如,.so对于 Unix 和类 Unix 系统,.dll对于 Windows)。

要在服务器启动时加载插件,请使用 --plugin-load-add选项命名包含它的库文件。使用这种插件加载方法,每次服务器启动时都必须给出该选项。例如,将这些行放在您的my.cnf 文件中,根据需要调整您的平台的插件库文件扩展名。(插件库文件扩展名取决于您的平台。常见后缀 .so用于 Unix 和类 Unix 系统, .dll用于 Windows。)

[mysqld]
plugin-load-add=mysql_clone.so

修改my.cnf后重启服务器使新设置生效。

笔记

在从以前的 MySQL 版本升级期间重新启动服务器时,该--plugin-load-add选项不能用于加载克隆插件。例如,将二进制文件或包从 MySQL 5.7 升级到 MySQL 8.0 后,尝试重新启动服务器 plugin-load-add=mysql_clone.so 会导致此错误:[ERROR] [MY-013238] [Server] Error installing plugin 'clone': Cannot install during upgrade. 解决方法是在尝试使用 启动服务器之前升级服务器 plugin-load-add=mysql_clone.so

或者,要在运行时加载插件,请使用此语句,.so根据需要调整平台的后缀:

INSTALL PLUGIN clone SONAME 'mysql_clone.so';

INSTALL PLUGIN加载插件,并将其注册到mysql.plugins 系统表中,以便为后续的每次正常服务器启动加载插件,而无需 --plugin-load-add.

要验证插件安装,请检查 INFORMATION_SCHEMA.PLUGINS表格或使用SHOW PLUGINS语句(请参阅第 5.6.2 节,“获取服务器插件信息”)。例如:

mysql> SELECT PLUGIN_NAME, PLUGIN_STATUS
       FROM INFORMATION_SCHEMA.PLUGINS
       WHERE PLUGIN_NAME = 'clone';
+------------------------+---------------+
| PLUGIN_NAME            | PLUGIN_STATUS |
+------------------------+---------------+
| clone                  | ACTIVE        |
+------------------------+---------------+

如果插件无法初始化,请检查服务器错误日志以获取克隆或插件相关的诊断消息。

如果插件之前注册过 INSTALL PLUGIN或者加载过 --plugin-load-add,可以使用--clone服务器启动时的选项来控制插件的激活状态。例如,要在启动时加载插件并防止它在运行时被删除,请使用以下选项:

[mysqld]
plugin-load-add=mysql_clone.so
clone=FORCE_PLUS_PERMANENT

如果要防止服务器在没有克隆插件的情况下运行,请使用or --clone的值, 以在插件未成功初始化时强制服务器启动失败。 FORCEFORCE_PLUS_PERMANENT

有关插件激活状态的更多信息,请参阅 控制插件激活状态