关于“[DBNETLIB][ConnectionWrite (send()).]General network error"的解决

最近需要用Excel生成一系列的图表,数据自然是通过sql server取得的。问题是这个excel有近50张图表,每个图表都要通过DB connection去取数据。问题来了,在refresh all的时候常常会遇到

[DBNETLIB][ConnectionWrite (send()).]General network error. Check your network documentation”错误。初步判断肯定是数据连接过多导致的(对Excel菜鸟来说没有能力从excel端进行解决)。经过一阵google,总算找到了解决办法,也许不是最好的,权当做个记录吧。以下文字拷贝自http://support.microsoft.com/default.aspx?scid=kb;en-us;899599 版权属于原作者。

 

可能的原因:

This issue occurs because Windows Server 2003 and later versions implement a security feature that reduces the size of the queue for concurrent TCP/IP connections to the server. This feature helps prevent denial of service attacks. Under heavy load conditions, the TCP/IP protocol may incorrectly identify a valid TCP/IP connections as a denial of service attack. This behavior may lead to the issue that is described in the "Symptoms" section.

 

解决方法:

Important This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click the following article number to view the article in the Microsoft Knowledge Base:

322756 How to back up and restore the registry in Windows



To resolve this issue, turn off this new functionality by adding the SynAttackProtect entry to the following registry key on the computer that is running Microsoft SQL Server that houses your BizTalk Server databases.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

Set the

SynAttackProtect

entry to a DWORD value of 00000000. To do this, follow these steps:

  1. Click Start, click Run, type regedit, and then click OK.
  2. Locate and then click the following registry key:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  3. On the Edit menu, point to New, and then click DWORD Value.
  4. Type SynAttackProtect, and then press ENTER.
  5. On the Edit menu, click Modify.
  6. In the Value data box, type 00000000. Click OK.
  7. Quit Registry Editor.

Note To complete this registry change, you must restart the computer that is running SQL Server.

 

你可能感兴趣的:(SQL Server,error,database)