Spec-Zone .ru
спецификации, руководства, описания, API
|
struct st_mysql_client_plugin *mysql_load_plugin(MYSQL *mysql, const char *name, int type,
int argc, ...)
Загружает клиентский плагин MySQL, определенный по имени и тип. Ошибка происходит, если тип недопустим, или плагин не может быть загружен.
Не возможно загрузить многократные плагины того же самого типа. Ошибка происходит, если Вы пытаетесь загрузить плагин типа, уже загруженного.
Определите параметры следующим образом:
mysql
: Указатель на a MYSQL
структура. Сменный API не требует соединения с сервером MySQL, но эта
структура должна быть должным образом инициализирована. Структура используется, чтобы получить связанную
с соединением информацию.
name
: Имя плагина, чтобы загрузиться.
type
: Тип плагина, чтобы загрузиться, или–1, чтобы
отключить проверку типа. Если тип не–1, только плагины, соответствующие тип, рассматривают для того,
чтобы загрузиться.
argc
: Число следующих параметров (0, если нет ни
одного). Интерпретация любого после параметров зависит от сменного типа.
Другой способ заставить плагины, которые будут загружаться, состоит в том, чтобы установить LIBMYSQL_PLUGINS
переменная окружения к разделенному от точки с запятой списку
сменных имен. Например:
shell> export LIBMYSQL_PLUGINS="myplugin1;myplugin2"
Плагины, названные LIBMYSQL_PLUGINS
загружаются, когда клиентская программа
вызывает mysql_library_init()
. Ни о какой ошибке не сообщают, если проблемы
происходят, загружая эти плагины.
С MySQL 5.7.1, 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
.
Указатель на плагин, если это было загружено успешно. NULL
если ошибка произошла.
Чтобы проверить на ошибки, вызовите mysql_error()
или mysql_errno()
функция. См. Раздел
21.8.7.15,"mysql_error()
", и Раздел
21.8.7.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);}
См. также Раздел
21.8.14.3,"mysql_load_plugin()
", Раздел
21.8.7.15,"mysql_error()
", Раздел
21.8.7.14,"mysql_errno()
".