int mysql_server_init(int argc, char **argv, char
**groups)
Описание
Данную функцию необходимо
вызывать только один раз во время
работы программы, использующей
встроенный сервер. Это функцию
следует вызвать перед вызовом
любой другой функции MySQL. Она
запускает сервер и
инициализирует все подсистемы
(mysys, InnoDB и т.д.),
используемые сервером. Без вызова
этой функции произойдет
аварийное завершение данной
программы. При использовании
пакета DBUG,
поставляемого вместе с MySQL, данную
функцию следует вызывать после
функции MY_INIT().
Аргументы argc и
argv аналогичны
аргументам в main().
Первый элемент аргумента
argv игнорируется (обычно
он содержит имя программы). Для
удобства аргумент argc может быть
равен 0 (нуль) - если не задано ни
одного аргумента командной
строки для данного сервера.
mysql_server_init() делает копию
аргументов, т.е. она безопастна
для уничтожения argv или
groups после вызова.
Аргумент groups
представляет собой список строк,
заканчивающийся NULL.
Этот аргумент задает активные
группы в файлах опций (see
Раздел 4.1.2, «Файлы параметров my.cnf»). Для удобства
аргумент groups может быть равен
NULL - в этом случае будут
активны группы [server] и
[emedded].
Пример
#include <mysql.h>
#include <stdlib.h>
static char *server_args[] = {
"this_program", /* эта строка не используется */
"--datadir=.",
"--key_buffer_size=32M"
};
static char *server_groups[] = {
"embedded",
"server",
"this_program_SERVER",
(char *)NULL
};
int main(void) {
mysql_server_init(sizeof(server_args) / sizeof(char *),
server_args, server_groups);
/* Здесь используются любые функции MySQL API */
mysql_server_end();
return EXIT_SUCCESS;
}
Возвращаемые значения
0 - если все в порядке, 1 - если произошла ошибка.
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.
© 1995-2005 MySQL AB. All rights reserved.
