Недавно пришлось столкнуться с проблемой, возникающей, как свидетельствует Гугл в Debian и Centos. После обновления системы невозможно использовать MySQL через ODBC.  Проблема проявляется появлением подобного сообщения:

relocation error: /usr/lib/odbc/libmyodbc.so: symbol mysql_odbc_escape_string, version libmysqlclient_15 not defined in file libmysqlclient_r.so.15 with link time reference

Сообщение появляется при любой попытки обращения к ODBC, вызывает аварийное завершение приложения. В случае с астериском его можно увидеть только запустив приложение непосредственно из консоли, не используя режима демона. При падении core файл не создается.

Причина заключается в том, что при очередном обновлении системы устанавливается обновление для libmysqlclient, несовместимое с libmyodbc. Решением является удалить из системы пакет libmyodbc, поставляемый в дистрибутиве и скачать последнюю версию с сайта MySQL. распаковать и разместить в прежнем месте, либо исправить путь к драйверу в /etc/odbcinst.ini

Похожие сообщения:

автор igorg \\ теги: , ,