写了一个最简单的Python,用来测试和网络内另一台Oracle数据库连接,但是一直在连接步骤报错。
代码非常非常简单,连接字串也是在其他工具里面测试过没问题的。
import oracledb
oracle = oracledb.connect(dsn="SYSADM/SYSADM@172.16.136.100:1521/HR92DMO")
报错内容看起来是连接上了对方的主机,然后就出了这个莫名其妙的错误。
C:\Users\softl\PycharmProjects\FuBoDTS\venv\Scripts\python.exe C:/Users/softl/PycharmProjects/FuBoDTS/main.py
Traceback (most recent call last):
File "C:\Users\softl\PycharmProjects\FuBoDTS\main.py", line 3, in <module>
oracle = oracledb.connect(dsn="SYSADM/SYSADM@172.16.136.100:1521/HR92DMO")
File "C:\Users\softl\PycharmProjects\FuBoDTS\venv\lib\site-packages\oracledb\connection.py", line 1012, in connect
return conn_class(dsn=dsn, pool=pool, params=params, **kwargs)
File "C:\Users\softl\PycharmProjects\FuBoDTS\venv\lib\site-packages\oracledb\connection.py", line 135, in __init__
impl.connect(params_impl)
File "src\oracledb\impl/thin/connection.pyx", line 318, in oracledb.thin_impl.ThinConnImpl.connect
File "src\oracledb\impl/thin/connection.pyx", line 206, in oracledb.thin_impl.ThinConnImpl._connect_with_params
File "src\oracledb\impl/thin/connection.pyx", line 177, in oracledb.thin_impl.ThinConnImpl._connect_with_description
File "src\oracledb\impl/thin/connection.pyx", line 118, in oracledb.thin_impl.ThinConnImpl._connect_with_address
File "src\oracledb\impl/thin/protocol.pyx", line 230, in oracledb.thin_impl.Protocol._connect_phase_two
File "src\oracledb\impl/thin/protocol.pyx", line 344, in oracledb.thin_impl.Protocol._process_message
File "src\oracledb\impl/thin/protocol.pyx", line 321, in oracledb.thin_impl.Protocol._process_message
File "src\oracledb\impl/thin/messages.pyx", line 287, in oracledb.thin_impl.Message.send
File "src\oracledb\impl/thin/messages.pyx", line 1537, in oracledb.thin_impl.AuthMessage._write_message
File "src\oracledb\impl/thin/messages.pyx", line 1345, in oracledb.thin_impl.AuthMessage._generate_verifier
KeyError: 'AUTH_PBKDF2_CSK_SALT'
Process finished with exit code 1