今天想用 Python 从 SQL Server 数据库中读取数据 一开始选了 pymssql 库,但在本机和远程的 Debian 11 服务器上都有问题。我简单检查了一下,没发现啥异常,gpt 又说这个库死了不维护了,就换了 pyodbc 。
换了库之后,本机是没问题了,但 Linux 那边又出了点状况。安装是挺顺利的,但连接的时候一直报错。后来一查,原来是 OPENSSL 的配置问题,默认的安全等级设得太高了。
我把 DEFAULT@SECLEVEL 的值从 2 改成 0 ,问题就解决了。这个方法是看了 github 上 thdaguin 的回帖才知道的。坑爹啊,花了很多时间搜索,微软文档也没有,纯纯填坑。
既然填坑了就分享一下,希望能帮到以后遇到同样问题的人。问了半天 3.5turbo 和 gemini ,给出的都没啥帮助
就这样吧,希望我的经历能给其他人一些参考。
[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT@SECLEVEL=0
https://github.com/microsoft/msphpsql/issues/1453#issuecomment-1878935421
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.