9.2.4 mysql_load_plugin()
struct st_mysql_client_plugin *
mysql_load_plugin(MYSQL *mysql,
const char *name,
int type,
int argc,
...)
Описание
Загружает плагин клиента MySQL, указанный по имени и типу. Возникает ошибка, если тип неверный или плагин не может быть загружен.
Невозможно загрузить несколько плагинов одного типа. Возникает ошибка, если вы пытаетесь загрузить плагин типа, который уже загружен.
Укажите аргументы следующим образом:
mysql: Указатель на структуруMYSQL. API плагина не требует подключения к серверу MySQL, но эта структура должна быть должным образом инициализирована. Структура используется для получения информации, связанной с подключением.name: Имя плагина для загрузки.type: Тип плагина для загрузки или −1 для отключения проверки типа. Если тип не −1, для загрузки рассматриваются только плагины, соответствующие указанному типу.argc: Количество последующих аргументов (0, если их нет). Интерпретация последующих аргументов зависит от типа плагина.
Другой способ загрузки плагинов — установить переменную среды LIBMYSQL_PLUGINS в список имён плагинов, разделенных точкой с запятой. Например:
export LIBMYSQL_PLUGINS="myplugin1;myplugin2"
Плагины, указанные по имени в LIBMYSQL_PLUGINS, загружаются, когда клиентская программа вызывает mysql_library_init(). Если при загрузке этих плагинов возникнут проблемы, ошибка не сообщается.
Переменная среды LIBMYSQL_PLUGIN_DIR может быть установлена в имя каталога, в котором следует искать клиентские плагины. Эта переменная используется двумя способами:
При предварительной загрузке клиентских плагинов значение опции недоступно, поэтому загрузка клиентских плагинов завершается неудачей, если плагины не расположены в жёстко заданном каталоге по умолчанию. Если плагины расположены в другом месте, переменную среды
LIBMYSQL_PLUGIN_DIRможно установить в соответствующий каталог, чтобы обеспечить успешность предварительной загрузки плагинов.Для явной загрузки клиентских плагинов функции C API
mysql_load_plugin()иmysql_load_plugin_v()используют значениеLIBMYSQL_PLUGIN_DIR, если оно существует, и опция не задана. Если опция задана, функцииmysql_load_plugin()иmysql_load_plugin_v()игнорируютLIBMYSQL_PLUGIN_DIR.
Значения возврата
Указатель на плагин, если он был загружен успешно. NULL, если произошла ошибка.
Ошибки
Для проверки ошибок вызовите функцию mysql_error() или mysql_errno(). См. Раздел 5.4.16, «mysql_error()» и Раздел 5.4.15, «mysql_errno()».
Пример
MYSQL mysql;
if(!mysql_load_plugin(&mysql, "myplugin",
MYSQL_CLIENT_AUTHENTICATION_PLUGIN, 0))
{
fprintf(stderr, "Error: %s\n", mysql_error(&mysql));
exit(-1);
}
См. также
См. также Раздел 9.2.4, «mysql_load_plugin()», Раздел 5.4.16, «mysql_error()», Раздел 5.4.15, «mysql_errno()».
© 2025 Oracle
Licensed under the GPLv2 License.