MySQL 支持插件 API,启用服务器插件的创建。插件可以在服务器启动时加载,也可以在运行时加载和卸载,而不需要重新启动服务器。该接口支持的插件包括但不限于存储引擎、INFORMATION_SCHEMA
表、全文本解析器插件和服务器扩展。
MySQL 发行版包括多个插件,实现服务器扩展:
-
用于身份验证的插件,用于验证客户端尝试连接到 MySQL 服务器的身份验证。可用的身份验证协议插件。见 第 8.2.17 节,“可插拔身份验证”。
-
连接控制插件,启用管理员在一定数量的连续失败的客户端连接尝试后引入增加延迟。见 第 8.4.2 节,“连接控制插件”。
-
密码验证插件实施密码强度策略,并评估潜在密码的强度。见 第 8.4.3 节,“密码验证组件”。
-
半同步复制插件实施复制功能,允许源服务器在至少一个副本响应每个事务后继续进行。见 第 19.4.10 节,“半同步复制”。
-
组复制启用您创建一个高度可用的分布式 MySQL 服务,跨多个 MySQL 服务器实例,具有数据一致性、冲突检测和解决、组成员服务等功能。见 第 20 章:组复制。
-
MySQL Enterprise Edition 包括一个线程池插件,管理连接线程以提高服务器性能,通过高效地管理语句执行线程来处理大量客户端连接。见 第 7.6.3 节,“MySQL 企业线程池”。
-
MySQL Enterprise Edition 包括一个审计插件,用于监控和记录连接和查询活动。见 第 8.4.5 节,“MySQL Enterprise 审计”。
-
MySQL Enterprise Edition 包括一个防火墙插件,实施应用程序级防火墙,以启用数据库管理员根据允许列表中的模式来允许或拒绝 SQL 语句执行。见 第 8.4.7 节,“MySQL Enterprise 防火墙”。
-
查询重写插件检查 MySQL 服务器收到的语句,并可能在服务器执行它们之前对其进行重写。请参阅 第 7.6.4 节,“重写器查询重写插件”,和 第 7.6.5 节,“ddl_rewriter 插件”。
-
版本令牌启用了创建和同步服务器令牌,以便应用程序可以使用这些令牌来防止访问不正确或过时的数据。版本令牌基于一个插件库,该库实现了一个
version_tokens
插件和一组可加载的函数。请参阅 第 7.6.6 节,“版本令牌”。 -
密钥环插件提供了敏感信息的安全存储。请参阅 第 8.4.4 节,“MySQL 密钥环”。
-
X 插件扩展了 MySQL 服务器,使其能够作为文档存储器运行。运行 X 插件使 MySQL 服务器能够使用 X 协议与客户端通信,该协议旨在将 MySQL 的 ACID 兼容存储能力作为文档存储器公开。请参阅 第 22.5 节,“X 插件”。
-
克隆允许从本地或远程 MySQL 服务器实例克隆
InnoDB
数据。请参阅 第 7.6.7 节,“克隆插件”。 -
测试框架插件测试服务器服务。有关这些插件的信息,请参阅 MySQL 服务器 Doxygen 文档中的插件测试服务部分,available at https://dev.mysql.com/doc/index-other.html。
以下部分描述了如何安装和卸载插件,以及如何在运行时确定哪些插件已安装并获取关于它们的信息。有关编写插件的信息,请参阅 MySQL 插件 API。