我目前正在开发一个新的 ASP.NET 项目,该项目托管在带有 SQL Server 2008 Express 数据库的 Windows Server 2008 RC2 上。我有三个 SQL Server 实例(用于不同目的)正在运行,它们目前都包含一个数据库。
这些实例似乎毫无理由地会在几天后关闭。这些实例的流量可能很少或根本没有,因为可能连续几天我都无法进行开发。
现在已经发生过几次了,这三个实例中的一个或两个刚刚关闭,所以如果不手动启动该实例,我就无法访问数据库。
我似乎找不到关机的事件日志条目,这很可能是因为我刚刚启用了日志记录(为什么默认设置是关闭的?)。
因此问题是:* 为什么 SQL Server 实例会关闭?(是否存在“3 天不活动后关闭实例”这样的情况?* 如何实现实例全天候运行?
编辑:我通过编写自己的应用程序来检查 SQL Server 服务的状态,从而解决了这个问题。我的程序将通过批处理文件启动,该文件由 Windows 调用任务计划程序每5分钟。
答案1
SQL Server Express 确实会进入空闲状态,所以我相信,当它未被使用时: http://blogs.msdn.com/b/sqlexpress/archive/2008/02/22/sql-express-behaviors-idle-time-resources-usage-auto-close-and-user-instances.aspx
(抱歉,我没有看日期……有时 SF 会显示很旧的帖子)。