Haloo all,
我有几个Windows服务在不同的服务器上运行,这些服务将在预定义的一组时间段内执行。
有时可能会发生服务无法正常运行的情况,然后我会重新启动该特定服务。之后它将开始运作。
目前使用SQL存储过程和SQL作业每30分钟系统将检查服务是否正常运行,如果它不起作用,那么它将触发dbmail作为通知我的ID。 (我的数据库中有一个表格,我将获得最后执行的日期和时间)。
我的问题是,是否有任何方式像.....使用SQL作业我可以直接重启这些Windows服务...使用批处理文件或其他东西...请注意,SQL数据库不在运行Windows服务的同一台服务器......但所有这些服务器都通过WAN连接。
答案 0 :(得分:0)
是的,创建一个执行"停止"的bat文件或者"重启"或"开始"为您提供所需的服务。 " sc \ servername stop servicename"或" sc \ servername start servicename"或" sc \ servername restart servicename"。此bat文件可以远程执行或直接在服务器上执行,然后可以使用sql作业或使用Windows任务调度程序调用此bat文件。在当天,我们所有的服务器管理都是使用VBScript或DOS,通过bat文件完成的。