Spec-Zone.ru › MySQL Connectors 1.0

3.5 Запуск программ C API-клиента

Если после обновления у вас возникнут проблемы с компилированными клиентскими программами, такие как Commands out of sync или неожиданные дампы ядра, вероятно, программы были скомпилированы с использованием старых заголовочных файлов или файлов библиотек. В этом случае проверьте дату заголовочного файла mysql.h и библиотеки libmysqlclient.a, используемых для компиляции, чтобы убедиться, что они из нового дистрибутива MySQL. Если нет, перекомпилируйте программы с новыми заголовочными файлами и библиотеками. Перекомпиляция также может потребоваться для программ, скомпилированных с использованием общей клиентской библиотеки, если изменился номер основной версии библиотеки (например, от libmysqlclient.so.17 до libmysqlclient.so.18).

Номер основной версии общей клиентской библиотеки определяет совместимость. (Например, для libmysqlclient.so.18.1.0 основная версия равна 18.) Библиотеки, поставляемые с новыми версиями MySQL, являются прямыми заменами старых версий с тем же основным номером. Пока основная версия библиотеки одинакова, вы можете обновить библиотеку, и старые приложения должны продолжить работу с ней.

При попытке выполнить программу MySQL во время выполнения могут возникнуть ошибки с неопределёнными ссылками. Если эти ошибки указывают на символы, начинающиеся с mysql_ или указывают на то, что библиотека libmysqlclient не найдена, это означает, что ваша система не может найти общую библиотеку libmysqlclient.so. Решение этой проблемы заключается в том, чтобы указать вашей системе искать общие библиотеки в каталоге, где расположена эта библиотека. Используйте любой из следующих методов, подходящих для вашей системы:

  • Добавьте путь к каталогу, где расположена libmysqlclient.so, в переменную среды LD_LIBRARY_PATH или LD_LIBRARY.

  • В macOS добавьте путь к каталогу, где расположена libmysqlclient.dylib, в переменную среды DYLD_LIBRARY_PATH.

  • Скопируйте файлы общей библиотеки (например, libmysqlclient.so) в какой-либо каталог, который ищется вашей системой, например, /lib, и обновите информацию о общей библиотеке, выполнив команду ldconfig. Убедитесь, что вы скопировали все связанные файлы. Общая библиотека может существовать под несколькими именами, используя символические ссылки для предоставления альтернативных имён.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/c-api-8.0-en/c-api-running-clients.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API