我们有一个每天早上在CruiseControl.net中运行的作业,用于将数据文件导入数据库。我们的问题似乎是,有些晚上数据库会睡一整夜。当我们早上运行脚本时,当我们等待数据库预热时,我们的连接超时了。我们已经尝试了增加超时等,但没有成功。有没有一种方法可以告诉SQL Server在设定的时间预热,或者通过挠挠它来保持温暖?
到目前为止,我们运行了两次作业,一次在上午9点预热,80%的时间都失败了,但至少它预热了服务器,一小时后再运行一次,几乎总是有效的。
我不想运行它两次,因为它是一个很大的任务,而且对CPU的消耗非常大。有什么想法吗?
发布于 2009-11-17 17:21:05
这是哪个版本的SQL Server?听起来像是数据库打开了自动关闭设置,这是EXPRESS的默认设置,但可能会导致这样的行为。
发布于 2009-11-17 17:20:57
ALTER DATABASE myDB SET AUTO_CLOSE OFF
go
发布于 2009-11-17 17:20:28
您可以在构建过程运行前30分钟安排一个查询来“预热”服务器吗?
另外,这个数据库是在服务器上运行还是在桌面上运行?如果是台式机,您可以检查电源管理设置。
https://stackoverflow.com/questions/1750373
复制