9.2.3 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.15, «mysql_error()» и Раздел 5.4.14, «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.3, «mysql_load_plugin()», Раздел 5.4.15, «mysql_error()», Раздел 5.4.14, «mysql_errno()».
© 2025 Oracle
Licensed under the GPLv2 License.