繁体   English   中英

什么原因导致 ODBC 连接错误 08001 ssl 安全错误

[英]What causes ODBC connection error 08001 ssl security error

我可以从本地桌面上的 SSMS 访问 SSIS 服务器和数据库,从select * from sysjobs获取结果。 在尝试从 python 3.7 64 位访问 SSIS 服务器和数据库时,使用连接字符串Driver={SQL Server}; Server=BSWHPACTIANDBD1; Database=msdb; Trusted_Connection=True Driver={SQL Server}; Server=BSWHPACTIANDBD1; Database=msdb; Trusted_Connection=True Driver={SQL Server}; Server=BSWHPACTIANDBD1; Database=msdb; Trusted_Connection=True ,我无法使用 pypyodbc 或 pyodbc 连接到数据库;

失败在这里: connection = X.connect(connect_string), where X = pyodbc|pypyodbc

pyodbc 错误是

pyodbc.OperationalError: ('08001', '[08001] [Microsoft][ODBC SQL Server 驱动程序][DBNETLIB]SSL 安全错误 (18) (SQLDriverConnect);[08001] [Microsoft][ODBC SQL Server 驱动程序][DBNETLIB] ConnectionOpen (SECDoClientHandshake()). (772)')

pypyodbc 错误是

pypyodbc.DatabaseError: ('08001', '[08001] [Microsoft][ODBC SQL Server Driver][DBNETLIB]SSL 安全错误')

Windows 10,64 位

请问有什么建议或想法吗?

我在我的 Windows PC 上遇到了这个问题,并如下解决了它:

下载并安装了一个新的 SQL Server 驱动程序(对我来说它在页面下方,可能会随着时间的推移而改变) https://docs.microsoft.com/en-us/sql/connect/odbc/download-odbc-driver-for-sql -server?view=sql-server-ver15

然后在您的 PC 上转到管理工具 -> ODBC 数据源(64 或 32 位)-> 驱动程序

然后取您刚安装的驱动程序的名称并在您的 python 连接中使用它

import pyodbc
try:
    conn = pyodbc.connect(
        driver='{ODBC Driver 17 for SQL Server}', # this is the name
        server='hostname.com',
        database='DB_NAME',
        uid='user_id',
        pwd='password')
    print(conn)
except Exception as e:
    print(e)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM