#python #oracle #connection #client #path-variables
#python #Oracle #подключение #клиент #путь-переменные
Вопрос:
В настоящее время я пытаюсь установить соединение с удаленной базой данных Oracle с помощью cx_Oracle.
#!/usr/bin/python3
import cx_Oracle
#create connection
connection = cx_Oracle.connect("User", "Password", "DBHost",
encoding="UTF-8")
print('It Works!')
Когда я пытаюсь подключиться к базе данных, я получаю это сообщение:
cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library
Что я пробовал после этого сообщения:
- Загрузка и установка клиента Oracle
- Все то же сообщение
- Затем я добавил переменную Path установленного клиента
- Все то же сообщение
Я сделал что-то не так?
Комментарии:
1. Как вы установили переменную path установленного клиента? Я думаю, что это может быть проблемой.
2. Вы уверены, что ПУТЬ экспортирован? Может ли strace рассказать вам что-то еще? $ strace myapp.py
3. /home/dtv/Installfiles/InstantClientOracle/instantclient_19_9/bin ?
4. внутри этого каталога нет «bin»..
5. @Sejachu Вы следовали инструкциям (внизу страницы looong, установка ZIP-файлов)? oracle.com/database/technologies/instant-client/… Вы экспортировали LD_LIBRARY_PATH ?
Ответ №1:
Думаю, вы работаете в Linux.
Инструкции по установке cx_Oracle для использования Oracle Instant Client в Linux находятся здесь .
Попробуйте запустить ldconfig или задать LD_LIBRARY_PATH, как показано в инструкциях.
sudo sh -c "echo home/dtv/Installfiles/InstantClientOracle/instantclient_19_9 > /etc/ld.so.conf.d/oracle-instantclient.conf"
sudo ldconfig