.net SQL连接错误

.net SQL连接错误,.net,sql,sql-server-2005,sql-server-2008,.net,Sql,Sql Server 2005,Sql Server 2008,我在尝试访问我的网站时遇到此错误: Exception information: Exception type: SqlException 异常消息:建立数据库时出错 连接到服务器。连接到SQL Server 2005时,此 故障可能是由于在默认设置下SQL 服务器不允许远程连接。(提供程序:TCP提供程序, 错误:0-连接尝试失败,因为连接方没有 一段时间后未正确响应,或建立连接 失败,因为连接的主机未能响应 这一错误在一天内发生6-7次 有人能告诉我为什么会出现此错误吗?我可以在我的SQ

我在尝试访问我的网站时遇到此错误:

Exception information:

Exception type: SqlException
异常消息:建立数据库时出错 连接到服务器。连接到SQL Server 2005时,此 故障可能是由于在默认设置下SQL 服务器不允许远程连接。(提供程序:TCP提供程序, 错误:0-连接尝试失败,因为连接方没有 一段时间后未正确响应,或建立连接 失败,因为连接的主机未能响应

这一错误在一天内发生6-7次


有人能告诉我为什么会出现此错误吗?我可以在我的SQL server端进行任何特殊设置以避免此崩溃或这是我的web应用程序中的一个问题吗?

以下是如何配置SQL server 2005以允许远程连接:

这可能是由各种原因造成的:

  • SQL Server中已禁用远程连接
  • 防火墙设置
  • 坏连接字符串
Microsoft的这篇KB文章可能会有帮助

编辑:请注意,如果您在具有本地数据库的系统上开发,数据通常通过共享内存进行交换。在测试和生产环境中,您有一个单独的数据库服务器,必须通过tcp协议与应用程序连接

连接字符串:

数据源=[SERVERADDRESS];初始目录=[DBNAME];用户 id=[用户];密码=[密码];持久安全 info=True;Pooling=True;最大池大小=1000;连接生存期=30

您真的必须设置池大小和连接生存期吗?我很少使用此设置。它们可能会造成问题。特别是

连接寿命


应该非常小心地使用。请在此处阅读更多信息

如果此问题只是偶尔出现,则可能是您的一个(或多个)命令超时

尝试增加命令属性的值


还可以尝试分析Sql server以进行长时间运行的查询。

若您发布了连接字符串(当然并没有密码/用户名),这将很有帮助。若您的连接通常有效,但有时无效,我可以考虑网络问题(例如流量过大)或者服务器上的高负载使其无法响应新的连接尝试。可能是您的网站在循环中访问数据库,导致数据库非常繁忙,在一段时间内不可用,并引发此类错误。为此,您应该查看db@JLevett:数据源=[SERVERADDRESS];初始目录=[DBNAME];用户id=[用户];密码=[密码];persist security info=True;Pooling=True;Max Pool Size=1000;连接生存期=30;有一点很有趣,我正在使用SQL SERver 2008,但在一条错误消息中显示为2005。此外,我们正在服务器上使用SSIS包进行一些更新,这些更新是通过SQL SERver代理计划的。在这方面,它们会造成任何问题吗?