Spec-Zone .ru
спецификации, руководства, описания, API
|
Встроенная библиотека сервера MySQL позволяет выполнить полнофункциональный сервер MySQL в клиентском приложении. Основные преимущества являются увеличенной скоростью и более простым управлением для встраиваемых приложений.
Встроенная библиотека сервера основана на клиент-серверной версии MySQL, который пишется в C/C++. Следовательно, встроенный сервер также пишется в C/C++. Нет никакого встроенного сервера, доступного на других языках.
API идентичен для встроенной версии MySQL и клиент-серверной версии. Чтобы изменить поточное приложение, чтобы пользоваться встроенной библиотекой, обычно только необходимо добавить звонки в следующие функции.
Таблица 21.35. MySQL Embedded Server Library Functions
Функция |
Когда Вызвать |
---|---|
Вызовите это прежде, чем любая другая функция MySQL будет вызвана, предпочтительно рано в
|
|
Вызовите это перед своими выходами программы. |
|
Вызовите это в каждом потоке, Вы создаете тот MySQL доступов. |
|
mysql_thread_end() |
Вызовите это перед вызовом pthread_exit() . |
Затем, соедините свой код с libmysqld.a
вместо libmysqlclient.a
.
Чтобы гарантировать совместимость на уровне двоичных кодов между Вашим приложением и библиотекой сервера, всегда
компилируйте свое приложение против заголовков для той же самой серии MySQL, который использовался, чтобы
скомпилировать библиотеку сервера. Например, если libmysqld
был скомпилирован
против заголовков MySQL 5.1, не компилируйте свое приложение против заголовков MySQL 5.5, или наоборот.
Поскольку mysql_library_
функции
также включаются в xxx
()libmysqlclient.a
, можно измениться между встроенным и
клиент-серверной версией, только соединяя Ваше приложение с правильной библиотекой. См. Раздел
21.8.7.40,"mysql_library_init()
".
Одно различие между встроенным сервером и автономным сервером - то, что для встроенного сервера, аутентификация
для соединений отключается по умолчанию. Чтобы использовать аутентификацию для встроенного сервера, определите
HAVE_EMBEDDED_PRIVILEGE_CONTROL
флаг компилятора, когда Вы вызываете CMake, чтобы сконфигурировать
Ваше распределение MySQL. См. Раздел 2.9.4, "MySQL
Source-Configuration Options".