Доступ к базе данных Oracle с помощью sqlapi C ++ - PullRequest
0 голосов
/ 12 апреля 2010

Мне нужно записать некоторые данные в несколько баз данных. Я выбираю sqlapi.com

Я сделал это для mysql и mssql. Теперь у меня проблема с базой данных Oracle.

Я установил сервер и клиент в Ubuntu. В браузере это работает, но sqlapi говорит:

libnnz10.so: невозможно открыть общий объект файл: нет такого файла или каталога

Библиотека API СУБД "libclntsh.so" загрузка не удалась

Эта библиотека является частью клиента СУБД установка, а не SQLAPI ++

Убедитесь, что клиент СУБД установлен и

эта необходимая библиотека доступна для динамическая загрузка

Linux / Unix:

1) Каталоги пользователя Переменная среды LD_LIBRARY_PATH

2) Список библиотек, кэшированных в /etc/ld.so.cache

3) / usr / lib, затем / lib

Оба эти файла находятся в / usr / lib. Я пробовал много способов сказать путь к этой папке, но ничего не работает.

Спасибо за помощь.

1 Ответ

1 голос
/ 12 апреля 2010

Я думаю, что вам нужно установить переменную LD_LIBRARY_PATH для пути к файлу общей библиотеки.

, например

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/oracle/instantclient/lib

установить переменную в .profile или .bash_profile. Это зависит от используемой вами оболочки.

Обновление

Из-за некоторых новых требований безопасности в ubuntu (подробности см. https://bugs.launchpad.net/ubuntu/+bug/366728) вы не можете использовать LD_LIBRARY_PATH для неинтерактивных оболочек. Используйте следующую процедуру (настройте путь оракула в соответствии со своими потребностями):

echo "/opt/oracle/product/whatever/lib" | sudo tee /etc/ld.so.conf.d/oracle.conf
sudo ldconfig -v
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...