Python. DPI-1047 ошибка с работой Oracle
При запуске python-скрипта возникает ошибка:
PS > python test.py
File "...\test.py", line 3, in <module>
cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library: "The specified module could not be found". See https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html for help
Причина:
File "...\test.py", line 3, in <module>
cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library: "The specified module could not be found". See https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html for help
Отсутствуют необходимые библиотеки Oracle
Как решить:
- Скачиваем instantclient basic для Windows тут
- Файлы библиотек переносим в каталог с Python (лучше в каталоге venv):
- oci.dll
- ocijdbc21.dll
- ociw32.dll
- oramysql.dll
- orannzsbb.dll
- oraocci21.dll
- oraocci21d.dll
- oraociei.dll
- orasql.dll
ВАЖНО:
ОтветитьУдалитьOracle Client 21 может подключаться к базе данных Oracle версии 12.1 или более поздней.
Клиенты Oracle 19, 18 и 12.2 могут подключаться к базе данных Oracle 11.2 или более поздней версии.
Клиент Oracle 12.1 может подключаться к базе данных Oracle 10.2 или более поздней версии.
Клиент Oracle 11.2 может подключаться к базе данных Oracle 9.2 или более поздней версии.
Также рекомендуется создать переменную среды LD_LIBRARY_PATH, в котором указать путь до файлов instant-client
ОтветитьУдалить