本节介绍如何安装和配置克隆插件。对于远程克隆操作,克隆插件必须安装在捐赠者和接收者 MySQL 服务器实例上。
有关安装或卸载插件的一般信息,请参见 第 7.6.1 节,“安装和卸载插件”。
为了能够被服务器使用,插件库文件必须位于 MySQL 插件目录(由 plugin_dir
系统变量命名的目录)。如有必要,在服务器启动时设置 plugin_dir
的值,以告知服务器插件目录位置。
插件库文件的基本名称是 mysql_clone.so
。文件名的后缀因平台而异(例如,对于 Unix 和类 Unix 系统,后缀为 .so
,对于 Windows,后缀为 .dll
)。
要在服务器启动时加载插件,请使用 --plugin-load-add
选项来命名包含它的库文件。使用这种插件加载方法,必须在每次服务器启动时提供该选项。例如,将以下几行添加到您的 my.cnf
文件中,根据需要调整插件库文件的扩展名。(插件库文件的扩展名取决于您的平台。常见的扩展名为 .so
(适用于 Unix 和类 Unix 系统),.dll
(适用于 Windows)。)
[mysqld]
plugin-load-add=mysql_clone.so
修改 my.cnf
后,重新启动服务器以使新设置生效。
在从以前版本的 MySQL 升级过程中重新启动服务器时,无法使用 --plugin-load-add
选项加载克隆插件。在这种情况下,尝试使用 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
语句(请参见 第 7.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
如果您希望服务器在没有克隆插件的情况下无法运行,请将 --clone
与 FORCE
或 FORCE_PLUS_PERMANENT
值一起使用,以强制服务器启动失败,如果插件无法成功初始化。
有关插件激活状态的更多信息,请参见 控制插件激活状态。