27.7.13.3 mysql_load_plugin()

struct st_mysql_client_plugin *mysql_load_plugin(MYSQL *mysql, const char *name, int type, int argc, ...)

Description

加载由名称和类型指定的 MySQLClient 端插件。如果类型无效或无法加载插件,则会发生错误。

无法加载相同类型的多个插件。如果您尝试加载已加载类型的插件,则会发生错误。

指定参数,如下所示:

导致加载插件的另一种方法是将LIBMYSQL_PLUGINS环境变量设置为以分号分隔的插件名称的列 table。例如:

export LIBMYSQL_PLUGINS="myplugin1;myplugin2"

当 Client 端程序调用mysql_library_init()时,将加载由LIBMYSQL_PLUGINS命名的插件。如果加载这些插件时出现问题,则不会报告任何错误。

可以将LIBMYSQL_PLUGIN_DIR环境变量设置为要在其中查找 Client 端插件的目录的路径名。此变量有两种使用方式:

Return Values

指向插件的指针(如果已成功加载)。 NULL如果发生错误。

Errors

要检查错误,请调用mysql_error()mysql_errno()函数。参见第 27.7.6.15 节,“ mysql_error()”第 27.7.6.14 节“ mysql_errno()”

Example
MYSQL mysql;

if(!mysql_load_plugin(&mysql, "myplugin",
                      MYSQL_CLIENT_AUTHENTICATION_PLUGIN, 0))
{
    fprintf(stderr, "Error: %s\n", mysql_error(&mysql));
    exit(-1);
}
See Also

另请参见第 27.7.13.3 节“ mysql_load_plugin()”第 27.7.6.15 节,“ mysql_error()”第 27.7.6.14 节“ mysql_errno()”

首页