Ошибка при подключении к Oracle 12c с использованием cx_oracle

Я пытаюсь подключиться к базе данных Oracle 12c, используя cx_oracle. Мой код указан ниже:

import cx_Oracle
from cx_Oracle import DatabaseError
import pandas as pd
import credaws
import os

os.system('export ORACLE_HOME=/opt/app/oracle/product/client_12_2')
os.system('export PATH=$ORACLE_HOME/bin:$PATH')
os.system('export LD_LIBRARY_PATH=$ORACLE_HOME/lib')

try:
    # cx_Oracle.init_oracle_client(lib_dir=libdir)
    dsn_tns=cx_Oracle.makedsn(credaws.host_name,credaws.port_number,service_name=credaws.service_name)
    conn = cx_Oracle.connect(user=credaws.user,password=credaws.password,dsn=dsn_tns)
    if conn:
        cursor = conn.cursor()
        print('Connection Successful')
except DatabaseError as e:
    err, = e.args
    print("Oracle-Error-Code:", err.code)
    print("Oracle-Error-Message:", err.message)
    
finally:
    cursor.close()
    conn.close()

Я все еще получаю эту ошибку:

введите здесь описание изображения

Oracle 12c установлен в папке /opt/app/oracle/product/client_12_2. Что я делаю не так?

Изменить 1: я устанавливаю переменные среды ORACLE_HOME, PATH и LD_LIBRARY_PATH перед вызовом метода подключения cx_oracle. Тем не менее, все еще получаю ту же ошибку.

Редактировать 2: при запуске этого скрипта от имени пользователя оракула я получаю сообщение об ошибке ниже:

введите здесь описание изображения


person Abhinav Dhiman    schedule 17.05.2021    source источник
comment
Я столкнулся с той же проблемой с Oracle 19c. Я был бы признателен, если кто-то может ответить на это.   -  person Yash Sharma    schedule 17.05.2021
comment
Проверить этот ответ? stackoverflow.com/questions/23970158/   -  person Anthony Tuininga    schedule 17.05.2021
comment
Я попытался установить переменные ORACLE_HOME, PATH и LD_LIBRARY_PATH. Тем не менее, все еще получаю ту же ошибку. Обновил код в вопросе.   -  person Abhinav Dhiman    schedule 18.05.2021