struct st_mysql_client_plugin * mysql_load_plugin(mysql * mysql,const char * name,int类型,int argc,...)
加载MySQL客户端插件,按名称和类型指定。如果类型无效或无法加载该插件,则会发生错误。
不可能加载相同类型的多个插件。如果您尝试加载已加载的类型的插件,则会发生错误。
指定以下参数:
mysql.
:指向一个指针mysql.
结构体。插件API不需要连接到MySQL Server,但必须正确初始化此结构。该结构用于获得与连接相关的信息。名称
:加载插件的名称。类型
:加载的插件类型,或-1禁用类型检查。如果类型不是-1,则仅考虑匹配类型的插件被认为是加载。argc.
:以下参数的数量(如果没有,则为0)。任何以下参数的解释取决于插件类型。
导致要加载插件的另一种方法是设置libmysql_plugins.
环境变量到分号分隔的插件名称列表。例如:
导出libmysql_plugins =“myplugin1; myplugin2”
插件名为libmysql_plugins.
在客户端程序调用时加载mysql_library_init()
。如果在加载这些插件时出现问题,则不会报告错误。
这libmysql_plugin_dir.
环境变量可以设置为要查找客户端插件的目录的路径名。此变量以两种方式使用:
在客户端插件预加载期间,值的值
-plugin-dir.
选项不可用,因此客户端插件加载失败,除非插件位于硬连线默认目录中。如果插件位于其他地方,libmysql_plugin_dir.
环境变量可以设置为正确的目录,以启用插件预加载以成功。用于显式客户端插件加载,
mysql_load_plugin()
和mysql_load_plugin_v()
C API函数使用libmysql_plugin_dir.
价值如果存在和-plugin-dir.
未给出选项。如果-plugin-dir.
给出,mysql_load_plugin()
和mysql_load_plugin_v()
忽略libmysql_plugin_dir.
。
要检查错误,请致电mysql_error()
或者mysql_errno()
功能。看第5.4.15节“mysql_error()”, 和第5.4.14节,“MySQL_ERRNO()”。
mysql mysql;if(!mysql_load_plugin(&mysql,“myplugin”,mysql_client_authentication_plugin,0)){fprintf(stderr,“错误:%s \ n”,mysql_error(&mysql));出口(-1);}