我的公司刚刚开始在
Windows 2008 R2服务器上使用TMG 2010作为我们的防火墙/ Web代理.自移动以来,所有与sql Server的连接都在大约30秒后关闭.
例如:
>从SSMS运行查询,该查询将成功运行
>等30秒
>再次运行查询,它将失败,并显示以下错误
A transport-level error has occurred when sending the request to the server. (provider: TCP Provider,error: 0 - An existing connection was forcibly closed by the remote host.
>再次运行查询,它将正常工作.
运行时间超过30秒的查询也会出现同样的问题.
我假设步骤3中的错误是因为SSMS没有意识到现有连接已经关闭.
查看TMG日志,我可以看到sql连接被关闭,其中包含以下信息:
Closed Connection Log type: Firewall service Status: Unspecified error Rule: Internal Internet Access Source: Internal (xx.xx.xx.xx) Destination: External (xx.xx.xx.xx:1433) Protocol: Microsoft sql (TCP) The result code is: 0x80004005
有关背景信息,我正在尝试连接到sql Azure.但是,我已将笔记本电脑直接连接到交换机(绕过TMG),我可以毫无问题地连接到同一个sql Azure实例.基于此,我不认为问题出在sql Azure或TMG的任何上游.
我发现一些文章指责TCP烟囱设置,但这似乎适用于Windows Server 2003,无论如何我尝试禁用它没有成功.
任何有关这方面的帮助将不胜感激.
编辑:事实证明,TMG已经过时,我已将其升级到SP2,但问题仍然存在.
编辑:我在Web代理设置下找到了最大连接超时,当前设置为1800秒.我甚至不确定Web代理是否与1433上的sql连接相关,但由于我的想法不足,我完全禁用了代理.不幸的是,这没有帮助.
是否有另一个空闲tcp超时的位置,我错过了?