cx_ Oracle: Как мне подключиться к Oracle, если вы используете кошелек? - PullRequest
0 голосов
/ 04 августа 2020

Вот код в файле con = cx_Oracle.connect('/@database_name').

Это настроено на использование моего oracle кошелька, но он по какой-то причине не работает (мне отказано в входе в систему). Как мне ввести свое имя пользователя и пароль в эту строку кода? con = cx_Oracle.connect('/@database_name')

Ответы [ 2 ]

1 голос
/ 04 августа 2020

Вы можете использовать ниже,

import cx_Oracle
ip = '192.168.0.1'
port = 1521
service_name = 'my_service'
dsn = cx_Oracle.makedsn(ip, port, service_name=service_name)

db = cx_Oracle.connect('user', 'password', dsn)
1 голос
/ 04 августа 2020

Вам следует взглянуть на

https://cx-oracle.readthedocs.io/en/latest/user_guide/connection_handling.html#establishing -database-connections

Чтобы использовать кошелек с cx_ Oracle, вам необходимо сначала настроить кошелек, создайте файлы sq lnet .ora и tnsnames.ora, и вам нужно использовать свойство dsn

connection = cx_Oracle.connect(dsn="mynetalias", encoding="UTF-8")

, где mynetalias - это запись TNS в вашем tnsnames.ora

mynetalias =
(DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = yourhost )(PORT = yourport))
    (CONNECT_DATA =
        (SERVER = DEDICATED)
        (SERVICE_NAME = yourservicename)
    )
)

Убедитесь, что sq lnet .ora настроен для использования кошелька

WALLET_LOCATION =
(SOURCE =
    (METHOD = FILE)
    (METHOD_DATA =
        (DIRECTORY = /your_wallet_path_directory)
    )
)
SQLNET.WALLET_OVERRIDE = TRUE
...