int mysql_server_init(int argc, char **argv, char
**groups)
説明
この関数は、組み込みサーバを使用するプログラムで、他の
MySQL 関数を呼び出す前に、1
回だけ呼び出す必要があります。まず組み込みサーバを起動し、このサーバが使用するサブシステム(mysys
、InnoDB
など)をすべて初期化します。この関数を呼び出さなかった場合、プログラムはクラッシュします。MySQL
に付属の DBUG
パッケージを使用している場合は、MY_INIT()
を呼び出した後にこの関数を呼び出す必要があります。
引数の argc
および
argv
は、main()
の引数と似ています。argv
の最初の要素は、通常はプログラム名であり、無視されます。使いやすくするために、サーバに対してコマンドライン引数がない場合、argc
は
0
(ゼロ)になります。mysql_server_init()
は引数のコピーを作成するので、それを呼び出した後は
argv
または groups
を壊しても問題ありません。
groups
の NULL
で終端された文字列のリストは、オプション設定ファイルのどのグループをアクティブにするかを選択します。See
項4.1.2. 「my.cnf
オプション設定ファイル」。
使いやすくするために、groups
が
NULL
の場合は、[server]
および
[embedded]
グループが読み込まれます。
例
#include <mysql.h> #include <stdlib.h> static char *server_args[] = { "this_program", /* this string is not used */ "--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); /* Use any MySQL API functions here */ 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.