代码之家  ›  专栏  ›  技术社区  ›  Pete Duncanson

如何预热休眠的SQL Server数据库

  •  7
  • Pete Duncanson  · 技术社区  · 15 年前

    我们每天早上都在CruiseControl.net中运行一项作业,将数据文件导入数据库。我们的问题似乎是有些晚上DB会彻夜未眠。当我们早上运行脚本时,当我们等待DB预热时,我们的连接超时。我们尝试过延长暂停时间等,但没有成功。有没有一种方法可以告诉SQL Server在设定的时间预热,或者通过挠痒痒来使其保持温暖?

    到目前为止,我们运行了两次作业,一次是在上午9点预热,80%的时间失败,但至少它会预热服务器,一个小时后再次预热,这几乎总是有效的。

    我宁愿不运行它两次,因为它是一个大任务,而且CPU非常密集。有什么想法吗?

    3 回复  |  直到 15 年前
        1
  •  15
  •   MartW    15 年前

    这是哪个版本的SQL Server?这听起来像是数据库启用了自动关闭设置,这是EXPRESS的默认设置,但可能会导致这样的行为。

        2
  •  13
  •   Damir Sudarevic    15 年前
    ALTER DATABASE myDB SET AUTO_CLOSE OFF
    go
    
        3
  •  1
  •   Dave Swersky    15 年前

    您能在构建过程运行前30分钟安排一个查询来“预热”服务器吗?

    另外-此数据库是在服务器上运行还是在桌面上运行?如果是台式机,您可以检查电源管理设置。