Библиотека встраиваемого сервера MySQL обеспечивает возможность запуска полнофункционального сервера MySQL внутри клиентского приложения. Основные преимущества, которые дает ее использование, - увеличение скорости и более простое управление для встраиваемых приложений.
Интерфейсы API для встраиваемой версии MySQL и для версии клиент/сервер идентичны. Чтобы реализовать возможность использования встраиваемого сервера в старом приложении с потоками, обычно необходимо только добавить вызовы следующих функций:
Функция | Когда вызывается |
mysql_server_init() |
Должна вызываться перед любой другой функцией MySQL, предпочтительно раньше, чем функция main(). |
mysql_server_end() |
Должна вызываться перед выходом из данной программы. |
mysql_thread_init() |
Должна вызываться в каждом создаваемом потоке, который будет работать с MySQL. |
mysql_thread_end() |
Должна вызываться перед вызовом pthread_exit() |
После добавления функций необходимо связать данный код с библиотекой
libmysqld.a
вместо libmysqlclient.a
.
Вышеприведенные функции типа mysql_server_xxx
также включены в
libmysqlclient.a
- таким образом обеспечивается возможность переключаться
между встраиваемой и клиент-серверной версиями просто линкованием
конкретного приложения с соответствующей библиотекой. См.раздел
See Раздел 8.4.5.1, «mysql_server_init()
».