我需要使用 pyodbc 连接到 mssql 服务器并收到以下错误:
('08001', '[08001] [Microsoft][适用于 SQL Server 的 ODBC 驱动程序 18]SSL 提供程序: [错误:0A000086:SSL 例程::证书验证失败:EE 证书密钥太弱] (-1) (SQLDriverConnect) ')
我的连接字符串如下:
try:
conn_str = f'DRIVER={{ODBC Driver 18 for SQL Server}};SERVER={self._server};DATABASE={self._database};UID={self._username};PWD={self._password}'
conn = pyodbc.connect(conn_str)
cursor = conn.cursor()
return cursor
except pyodbc.Error as err:
print('pyodbc error')
print(str(err))
如何避免ssl证书的检查?
在连接字符串中添加:
加密=否;
我有类似的问题,并努力寻找一个好的答案。关于 ODBC,存在很多混乱。如果您使用的是 Linux,我建议您查看
unixODBC
驱动程序附带的 PDF 文档。可以在/opt/simba/spark
下找到。
在该文档中,它说您应该使用参数
AllowSelfSignedServerCert=1
。这对我们有用。