在连接数据库SQLserver,时可能会出现如下的故障,特别是当操作系统是Win11时,在连接比较旧的版本数据库时会出现这样的问题:10054 远程主机强迫关闭了一个现有的连接。报错如下图所示:
根据微软的官方网站,查阅了相关的内容,发现是SSL/TLS版本不一致导致的,也就是说客户端在与服务器通信时,会约定安全协议(当然服务器与客户端支持多种协议,之间通信时约定用哪一种,一般会优先版本高的,具体不是特别清楚)。
于是,我将服务器设置为SSL 3.0。(用于验证是否是这样导致的)
果不其然,上面的这个故障复现了。
随后又将客户端、服务器设置启用不同的SSL/TLS版本。出现了下面的这个故障。
文中所用到的工具:
Nartac Software - IIS Crypto
参考:
(OS 错误 10054) 强行关闭现有连接 - SQL Server | Microsoft Learn
自 9 月发布的预览版和后续更新开始,Win11 默认禁用 TLS 1.0/1.1 - IT之家