【问题标题】:SQL Server 2008 stops responding after webserver inactivity网络服务器不活动后 SQL Server 2008 停止响应
【发布时间】:2010-11-29 16:04:54
【问题描述】:

我最近设置了几台服务器,目的是将我们的网站转移到它们上面。一种是 Windows Web Server 2008,另一种是运行 Sql Server 2008 的 Windows Server 2008 Standard。

我安装的第一件事是 FogBugz,一切似乎都安装并运行顺利,直到我们停止使用它一段时间。然后当再次尝试访问它时,我收到一条错误消息,说它无法与数据库通信。这种情况一直存在,直到我通过 RDP 登录到 Web 服务器。然后如果我刷新fogbugz页面,它会加载页面就好了。

我已经这样做了很多次了,似乎如果该网站大约 30 分钟不使用,它将不再能够与数据库通信。但是在通过 RDP 连接后不久(我没有做任何更改),它又开始工作了。

任何想法可能导致此问题?

编辑:更多细节

发布的答案似乎是原因,但是创建的 FogBugz 帐户是本地帐户,而不是域帐户。并且 Web 服务器使用的是 SQL 身份验证,而不是 Windows 身份验证,所以我不确定在域帐户下会运行什么。有什么方法可以查看作为域用户运行的内容吗?

编辑:

这个问题肯定与与数据库的通信有关。我将应用程序池从 FogBugz 用户切换到 NetworkServices,并且我还安装了一个具有完全相同行为的购物车应用程序。当我登录到服务器时,网站工作。当我不在时,他们不会。只是丢失了数据库连接。例如,FogBugz 显示了一个帮助页面,说明如何设置连接字符串。将运行什么作为域帐户管理数据库连接?

【问题讨论】:

  • 要完全消除 Web 服务器,可能值得使用另一台机器上的 SQL 查询工具进行一些测试。 SQLCMD 会很好,因为您真正测试的只是连接性。检查 SQL Server 日志 - SQL Server 服务是否正在停止,或者是否记录错误?

标签: sql-server timeout fogbugz


【解决方案1】:

我对类似的事情有一个遥远的模糊记忆,这是由网站运行的身份引起的,即它在域\用户(例如您自己)而不是服务帐户下运行。症状是一样的;在该用户重新登录主机后,一切将重新开始。

【讨论】:

  • 这听起来确实是个问题。我正在使用域帐户登录。不过,我没有明确告诉任何东西以域用户身份运行。连接字符串使用 SQL Server 帐户,而不是 Windows 帐户进行身份验证。
【解决方案2】:

域控制器发生了一些奇怪的事情。我启动了一个新的域控制器,并将现有的服务器移到它上面,问题就消失了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多