在作业中停止和启动实例

abi*_*ari 2 sql-server sql-server-2012

我有 SQL Server 工作。在作业的最后一步,我想停止/启动 SQL Server。

接下来,我创建了.bat文件NET STOP "MsSqlServer"

我尝试了使用执行进程任务的 SSIS 包,cmd.exe然后执行.bat文件以重新启动mssqlserver,它工作正常......

但是,当我在 SQL Server 作业中调用此包时,它会停止该服务,但不会重新启动它。

问题是如何在另一个 sql server 作业完成后停止/启动 sql server ..?

我在一个具有 64 GB 内存的工作站上有 sql 服务器/分析服务/报告服务。我每晚都有以下步骤:

  • 1-ETL 更新 DW
  • 2- 流程分析服务数据库
  • 3-更新报告服务订阅

有时,在步骤 2 中开始 AS 处理时,它会给我error: there is no resource Available and and the job got failed.

我想要的只是适合这种环境的良好内存配置。

我必须为内存管理选择什么策略?

另一个问题:在更新订阅的第 2 步之后(我有大约 50 个订阅),如果我尝试Update Subscription使用干净的内存(在我重新启动 SQL Server 服务后),订阅执行得非常快。

如果我不重新启动 SQL 服务,则需要很长时间才能运行,有时它永远不会给我结果。

SQL*_*tar 5

你不能指望一个没有运行的服务执行一个命令来启动它自己。你需要使用外部的东西。SQL 代理服务依赖于正在运行的 SQL 服务,这就是您不能在 SQL 代理内部的作业中执行此操作的原因。您可以使用默认的 Windows 任务调度程序,或者您可以让 SQL 服务在发现它停止时尝试重新启动。

话虽如此,您重新启动服务以释放内存的原因意味着您应该将精力集中在正确的内存管理上,而不是如何动态地重新启动实例。