27.6 Библиотека встраиваемого сервера MySQL libmysqld
Библиотека встраиваемого сервера MySQL позволяет запускать полноценный сервер MySQL внутри клиентского приложения. Основные преимущества — повышение скорости и упрощение управления для встраиваемых приложений.
Библиотека встраиваемого сервера устарела начиная с MySQL 5.7.19 и удалена в MySQL 8.0.
Библиотека встраиваемого сервера основана на клиентско-серверной версии MySQL, написанной на C/C++. Следовательно, и встраиваемый сервер написан на C/C++. Встраиваемый сервер недоступен в других языках.
API идентичен для встраиваемой версии MySQL и клиентско-серверной версии. Чтобы изменить приложение с потоками на использование встраиваемой библиотеки, обычно достаточно добавить вызовы следующих функций.
Таблица 27.2 Функции библиотеки встраиваемого сервера MySQL
Функция | Когда вызывать |
|---|---|
Вызовите ее перед вызовом любой другой функции MySQL, желательно на ранней стадии функции | |
Вызовите ее перед завершением работы программы. | |
Вызовите ее в каждом потоке, созданном для доступа к MySQL. | |
Вызовите ее перед вызовом функции pthread_exit(). |
Затем свяжите свой код с libmysqld.a вместо libmysqlclient.a. Для обеспечения бинарной совместимости между вашим приложением и библиотекой сервера всегда компилируйте ваше приложение с заголовками для той же серии MySQL, что и библиотека сервера. Например, если libmysqld была скомпилирована с заголовками MySQL 5.6, не компилируйте ваше приложение с заголовками MySQL 5.7 и наоборот.
Поскольку функции mysql_library_ также включены в xxx()libmysqlclient.a, вы можете переключаться между встраиваемой и клиентско-серверной версиями, просто связав ваше приложение с нужной библиотекой. Смотрите ...
Одно различие между встраиваемым сервером и автономным сервером заключается в том, что для встраиваемого сервера аутентификация для подключений по умолчанию отключена.
© 2025 Oracle
Licensed under the GPLv2 License.