Sqlserver遇到TCP Provider An existing connection was forcibly closed by the remote host的解决方法

-1

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

报错TCP Provider: An existing connection was forcibly closed by the remote host
现象:在Fdb2(服务器名Sqlserver96)服务器执行远程调用FDB4\mart服务器的job报错TCP Provider: An existing connection was forcibly closed by the remote host

这类错误在官方文档里面有记录https://learn.microsoft.com/en-us/troubleshoot/sql/database-engine/connect/tls-exist-connection-closed,大概分为几种情况一一排查下去即可,本人的场景是因为目标端FDB4的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL下面多了除SSL2.0以外的TLS和PCT等协议,把FDB4注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL下面的注册信息export一份当成备份,再删除其他协议,只保留SSL2.0
备注:有时候也需要查看FDB4\mart这个Sqlserver实例SQL Server Configuration Manager --SQL Server Network Configuration-- Protocols for MART–TCP/IP–IP Addresses中的ip 是否配置成了其他服务器的IP
在这里插入图片描述

### 解决 'An existing connection was forcibly closed by the remote host' 错误的方法 #### Redis 远程连接问题 当遇到 `wsasend: An existing connection was forcibly closed by the remote host` 的错误时,这通常意味着客户端尝试发送数据到服务器端口,但是服务器突然终止了连接[^1]。为了排查此问题: - **检查防火墙设置**:确认服务器和客户端之间的网络路径上没有任何防火墙阻止通信。 - **验证服务状态**:确保 Redis 服务正在运行,并监听预期的 IP 地址和端口号。 ```bash netstat -an | grep :<port_number> ``` - **调整超时参数**:适当增加客户端和服务端的心跳检测时间和重试次数来减少因短暂网络波动引起的断开情况。 #### EasyOCR 和 urllib 库中的应用层协议异常 对于 Python 中使用 EasyOCR 或者通过 urllib 访问外部资源时发生的 `[WinError 10054] An existing connection was forcibly closed by the remote host` 错误,可能是由于目标网站主动切断了请求连接或是中间件(如代理)的行为所致[^2]。建议采取以下措施: - **更换镜像源或API接口**:如果可能的话,切换至更稳定的第三方库托管站点或其他提供相同功能的服务提供商。 - **优化HTTP头信息**:模拟浏览器行为,在发起 HTTP 请求前添加必要的 User-Agent 字段和其他头部字段以提高兼容性和成功率。 ```python import requests headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)', } response = requests.g
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值