MySQL 8.4 版本说明
组件必须加载到服务器中才能使用。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
语句可以在跨平台执行时保持一致性。
安装组件时,还可能会自动安装相关的可加载函数。如果是这样,卸载组件时也会自动卸载这些函数。