SSRS开始/停止

时间:2013-07-31 10:25:37

标签: sql reporting-services

我想创建一个SQL作业来停止并在工作时间之外重新启动报表服务器,但是我在创建允许这种情况发生的SQL代码时遇到了问题。

我正在考虑使用类似的东西: -

  

NET STOP ReportServer

     

NET START ReportServer

但是不知道将其合并到命令代码中的最佳方法吗?

任何建议都非常感谢。

1 个答案:

答案 0 :(得分:2)

您无需编写任何SQL代码即可。 SQL代理作业还可以具有执行操作系统命令的“CmdExec”类型的作业步骤。

只需创建两个作业,一个用于停止一个用于启动报告服务服务。 向每个人添加一个类型为“CmdExec”的作业步骤,提供您在问题中列出的命令(net stop ...net start ...)。

您可以通过SSMS UI或SQL命令创建作业。您可以使用UI中的“脚本”按钮创建后者。

为了便于说明,这里有一个摘录,显示了停止服务的作业步骤的创建:

...

USE [msdb]
GO
EXEC msdb.dbo.sp_add_jobstep @job_name=N'StopSSRS', @step_name=N'StopSSRS', 
        @step_id=1, 
        @cmdexec_success_code=0, 
        @on_success_action=1, 
        @on_fail_action=2, 
        @retry_attempts=0, 
        @retry_interval=0, 
        @os_run_priority=0, @subsystem=N'CmdExec', 
        @command=N'net.exe stop ReportService', 
        @database_name=N'master', 
        @flags=0
GO
...