MySQL 9.0 发行说明
组件必须先加载到服务器中才能使用。MySQL 支持在运行时手动加载组件,并在服务器启动期间自动加载组件。
加载组件后,有关组件的信息将按“7.5.2 节 “获取组件信息””中所述提供。
INSTALL COMPONENT
和 UNINSTALL COMPONENT
SQL 语句支持加载和卸载组件。例如
INSTALL COMPONENT 'file://component_validate_password';
UNINSTALL COMPONENT 'file://component_validate_password';
加载程序服务处理组件的加载和卸载,并在 mysql.component
系统表中注册已加载的组件。
用于组件操作的 SQL 语句会影响服务器操作和 mysql.component
系统表,如下所示
INSTALL COMPONENT
将组件加载到服务器中。这些组件将立即生效。加载程序服务还会在mysql.component
系统表中注册已加载的组件。对于后续的服务器重启,加载程序服务会在启动过程中加载mysql.component
中列出的所有组件。即使服务器是使用--skip-grant-tables
选项启动的,也会发生这种情况。可选的SET
子句允许您在安装组件时设置组件系统变量值。UNINSTALL COMPONENT
会停用组件并将其从服务器中卸载。加载程序服务还会从mysql.component
系统表中取消注册组件,以便服务器在后续重启期间的启动过程中不再加载它们。
与服务器插件的相应 INSTALL PLUGIN
语句相比,组件的 INSTALL COMPONENT
语句具有一个显著的优势,即无需知道用于命名组件的任何特定于平台的文件名后缀。这意味着可以在所有平台上统一执行给定的 INSTALL COMPONENT
语句。
安装组件时,还可以自动安装相关的可加载函数。如果是这样,则卸载组件时也会自动卸载这些函数。