mysql2.so: libmysqlclient_r.so.15: невозможно открыть общий объектный файл: нет такого файла или каталога - PullRequest
24 голосов
/ 10 декабря 2011

Я пытаюсь запустить приложение Rails два с сервером Ubuntu 10.04, sphinx, myql2 версии 0.2.7 и percona server 5.5 (Myslql 5.5).mysql2 в IRB работает нормально, я могу подключиться к БД.это приложение rails 2 работает на другом сервере Centos с MySql 5.1.Когда я запускаю:

script/server -e production 

, я получаю:

mysql2.so: libmysqlclient_r.so.15: не могу открыть общий объектный файл: нет такого файла или каталога

вот мои библиотеки:

# ls -l /usr/lib |grep sql
-rw-r--r--  1 root root 10581008 2011-11-18 16:51 libmysqlclient.a
lrwxrwxrwx  1 root root       16 2011-12-10 05:48 libmysqlclient_r.a -> libmysqlclient.a
lrwxrwxrwx  1 root root       20 2011-12-10 05:48 libmysqlclient.so -> libmysqlclient.so.16
lrwxrwxrwx  1 root root       29 2011-12-10 06:01 libmysqlclient.so.15 -> /usr/lib/libmysqlclient.so.16
-rw-r--r--  1 root root     7332 2011-11-18 16:44 libmysqlservices.a
-rw-r--r--  1 root root   562520 2010-02-08 06:59 libsqlite3.a
-rw-r--r--  1 root root      973 2010-02-08 06:59 libsqlite3.la
lrwxrwxrwx  1 root root       19 2011-12-07 17:15 libsqlite3.so -> libsqlite3.so.0.8.6
lrwxrwxrwx  1 root root       19 2011-03-09 18:43 libsqlite3.so.0 -> libsqlite3.so.0.8.6
-rw-r--r--  1 root root   528668 2010-02-08 06:59 libsqlite3.so.0.8.6
drwxr-xr-x  3 root root     4096 2011-12-10 05:47 mysql

Как мне это исправить?

Ответы [ 5 ]

86 голосов
/ 29 апреля 2012

Если вы снова столкнетесь с этой ошибкой после обновления до 12.04 (или для людей, прибывших сюда после поиска заголовка этой страницы после обновления до 12.04), у меня сработало следующее:

gem uninstall mysql2
gem install mysql2

Это перекомпилируетсяэтот драгоценный камень использовал libmysqlclient18 и работал на меня.

Надеюсь, это поможет кому-то там.

7 голосов
/ 09 февраля 2012

Вам необходимо установить библиотеки разработки.Попробуйте

sudo apt-get install libmysqlclient20-dev

или

sudo apt-get install libmysqlclient19-dev
2 голосов
/ 05 января 2017

Еще один вариант, который не был упомянут здесь, но был дан ответ в на этот вопрос .Вы должны установить MySQL-python с параметром --no-binary.Этот вопрос гораздо проще найти, поэтому я добавляю ответ здесь для справки:

Сначала удалите текущую версию MySQL-python:

pip uninstall MySQL-python

Затем установите MySQL-pythonс параметром --no-binary:

pip install --no-binary MySQL-python MySQL-python
2 голосов
/ 01 августа 2016

У меня была эта ошибка с mysql-python и я решил эту проблему с помощью pip:

pip uninstall mysql-python
pip install mysql-python
2 голосов
/ 10 декабря 2011

Установить клиентские библиотеки mysql: apt-get install libmysqlclient16

...