5.7.1插件服务组件

在插件方面的服务接口,提供了相关的信息在一个头文件。包括一个插件访问这些信息plugin.h文件(插件必须包括):

# include < mysql / plugin.h >

plugin.h包括services.h文件,它充当“保护伞”文件,包括特定于服务的标头名称的形式service_xxx.h。在一个MySQL源分布,位于头文件包括/ mysql目录和有包容层次结构是这样的:

  • plugin.h包括services.h

  • services.h是“伞”头,包括所有可用的特定于服务的头文件。

  • 特定于服务的标题名称service_my_snprintf.hservice_thd_alloc.h

服务器端服务接口使用的头文件就上市,但也包括其他文件。在一个MySQL源分布,这些文件位于libservicessql目录:

libservices目录包含的源文件libmysqlservices图书馆是建立。这个目录中的文件包括:

  • 基本知识的:编写插件服务指令。

  • xxx_services.h:特定于服务的接口文件。

在MySQL构建和安装过程中,libmysqlservices图书馆是编译和安装在一个目录插件可以访问它。所有的插件都应该链接在这个图书馆使用-lmysqlservices国旗的时候。

sql目录包含sql_plugin.cc,实现了插件的功能。这个文件包括sql_plugin_services.h,每个可用的服务注册。