int mysql_server_init(int argc, char **argv, char
**groups)
Beschreibung
Diese Funktion muss in einem
Programm, das den Embedded Server benutzt, einmalig vor jeder
anderen MySQL-Funktion aufgerufen werden. Sie startet den
Server und initialisiert eventuelle Subsysteme
(mysys, InnoDB und so
weiter), die der Server benötigt. Wird diese Funktion nicht
aufgerufen, führt der nächste
mysql_init()-Aufruf
mysql_server_init() aus. Wenn Sie das mit
MySQL gelieferte DBUG-Paket benutzen, sollten Sie die Funktion
nach my_init() aufrufen.
Die Argumente argc und
argv entsprechen den Argumenten von
main(). Das erste Element von
argv wird ignoriert (es enthält
typischerweise den Namen des Programms). Der Bequemlichkeit
halber kann argc den Wert
0 (null) haben, wenn keine
Kommandozeilenargumente für den Server vorhanden sind. Da
mysql_server_init() die Argumente kopiert,
kann argv oder groups
nach dem Aufruf getrost zerstört werden.
Wenn Sie sich mit einem externen Server verbinden möchten,
ohne den Embedded Server zu starten, müssen Sie einen
negativen Wert für argc angeben.
Die mit NULL endende Liste der Strings in
groups wählt die Gruppen aus den
Optionsdateien aus, die aktiv sein sollen. Siehe
Abschnitt 4.3.2, „my.cnf-Optionsdateien“. Der Bequemlichkeit halber kann
groups den Wert NULL
haben. In diesem Fall sind die Gruppen
[server] und [embedded]
aktiv.
Beispiel
#include <mysql.h>
#include <stdlib.h>
static char *server_args[] = {
"this_program", /* Dieser String wird nicht benutzt */
"--datadir=.",
"--key_buffer_size=32M"
};
static char *server_groups[] = {
"embedded",
"server",
"this_program_SERVER",
(char *)NULL
};
int main(void) {
if (mysql_server_init(sizeof(server_args) / sizeof(char *),
server_args, server_groups))
exit(1);
/* Hier werden MySQL-API-Funktionen benutzt */
mysql_server_end();
return EXIT_SUCCESS;
}
Rückgabewerte
0, wenn alles okay ist, 1, wenn ein Fehler auftrat.
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.
