Sqlserver Sql Agent Job 只能同时有一个实例运行
Sqlserver Sql Agent中的Job默认情况下只能有一个实例在运行,也就是说假如你的Sql Agent里面有一个正在运行的Job叫"Test Job",如果你现在再去启动一次"Test Job"就会报错,因为Sqlserver规定在一个Sqlserver账号下,Sql Agent不能同时启动相同的Job两次,只有前一次启动执行完成后,才能够再次启动该Job。
那么随之而来的问题是如何用sql语句检测Job是否已经执行完毕了呢?下面有一个语句可以作为参考:
EXEC msdb.dbo.sp_help_job @execution_status = 1
以上语句执行完后,返回的行就是当前正在运行的Job信息,其中列name就是正在执行Job的名称,如果你要查找的Job不在上面这个存储过程返回的结果里面,表示该Job已经执行完毕了。

如果查询到Sql Agent中的Job正在执行,可以使用存储过程msdb.dbo.sp_stop_job强制停止Job,然后再使用存储过程msdb.dbo.sp_start_job来启动Job,需要注意的是如果在已经停止的Job上调用msdb.dbo.sp_stop_job或者在正在执行的Job上调用msdb.dbo.sp_start_job会报错,所以在调用存储过程msdb.dbo.sp_start_job和msdb.dbo.sp_stop_job前需要判断Job的当前执行状态,或者使用sql的Try Catch语句来捕获错误,msdb.dbo.sp_stop_job和msdb.dbo.sp_stop_job的使用方法如下所示:
EXEC msdb.dbo.sp_start_job @job_name='Job_name'--Job_name就是Job的名字
EXEC msdb.dbo.sp_stop_job @job_name='Job_name'--Job_name就是Job的名字
Sqlserver Sql Agent Job 只能同时有一个实例运行的更多相关文章
- 【原创】大叔经验分享(82)logstash一个实例运行多个配置文件
		logstash一个实例运行多个配置文件,将所有配置文件放到以下目录即可 /usr/share/logstash/pipeline 但是默认行为不是每个配置文件独立运行,而是作为一个整体,每个inpu ... 
- c# 只允许一个实例运行
		1.单件模式,Singleton,应用程序只能允许一个实例在运行.这是最好的解决方法2.查询系统进程里是不是已经运行.private void Form1_Load(object sender, Ev ... 
- winform只能有一个实例运行且打开已运行窗口
		static class Program { private static Mutex onlyOne; [STAThread] static void Main() { onlyOne = new ... 
- C#只能运行一个实例程序的方法
		互斥进程(程序), 简单点说,就是在系统中只能有该程序的一个实例运行. 现在很多软件都有这功能,如Maxthon 可以设置为"只允许打开一个窗体",还有Bitcomet等. 我也是 ... 
- 转  C# 只允许运行一个实例
		来源:http://blog.csdn.net/jin20000/article/details/3136791 互斥进程(程序), 简单点说,就是在系统中只能有该程序的一个实例运行. 现在很多软件都 ... 
- C# 只启动一个实例完全解决方案
		工作上经常会遇到"程序只能启动一个实例"这样的需求. 我想,这样的需求应该很普遍,所以没打算去动脑筋,去找谷歌问下就得了,用下来发现,不是这里不爽就是那里不行. 先说下我详细的几点 ... 
- Java程序只运行一个实例[转]
		如果希望你的Java程序只能存在一个实例,可以参考下面的用法. 原文链接:http://blog.csdn.net/yaerfeng/article/details/7264729 Java没有提供这 ... 
- 解决C#程序只允许运行一个实例的几种方法详解
		解决C#程序只允许运行一个实例的几种方法详解 本篇文章是对C#中程序只允许运行一个实例的几种方法进行了详细的分析介绍,需要的朋友参考下 本文和大家讲一下如何使用C#来创建系统中只能有该程序的一个实例运 ... 
- Object.create() 的含义:从一个实例对象,生成另一个实例对象
		出处:https://wangdoc.com/javascript/oop/object.html#objectcreate 生成实例对象的常用方法是,使用new命令让构造函数返回一个实例.但是很多时 ... 
随机推荐
- 使用jQuery基本过滤选择器
			<script type="text/javascript"> $(function(){ //增加第一个元素的类别 $("li:first").a ... 
- iOS7跳转AppStore地址
			跳转AppStore地址改变: 由 itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews? ... 
- iOS block里的self
			block是可以捕捉上下文的特殊代码块. block可以访问定义在block外的变量,当在block中使用时,它就会为其在作用域内的每个标量变量创建一个副本. 如果通过self拥有一个block,然后 ... 
- LeetCode Flip Game II
			原题链接在这里:https://leetcode.com/problems/flip-game-ii/ 题目: You are playing the following Flip Game with ... 
- LeetCode Integer to English Words
			原题链接在这里:https://leetcode.com/problems/integer-to-english-words/ Convert a non-negative integer to it ... 
- OpenGl的glMatrixMode()函数理解
			glMatrixMode()函数的参数,这个函数其实就是对接下来要做什么进行一下声明,也就是在要做下一步之前告诉计算机我要对“什么”进行操作了,这个“什么”在glMatrixMode的“()”里的选项 ... 
- Python自省(反射)指南
			在笔者,也就是我的概念里,自省和反射是一回事,当然其实我并不十分确定一定以及肯定,所以如果这确实是两个不同的概念的话,还请多多指教 :) 转载请注明作者.出处并附上原文链接,多谢!update 201 ... 
- Java基础之处理事件——添加工具提示(Sketcher 9 with tooltips)
			控制台程序. 在Java中实现对工具提示的支持是非常简单的,秘诀仍在我们一直使用的Action对象中.Action对象拥有存储工具提示文本的内置功能因为文本是通过SHORT_DESCRIPTION键提 ... 
- Java基础之创建窗口——使用网格布局管理器(TryGridLayout)
			控制台程序. 网格布局管理器可以在容器的矩形网格中布局组件. import javax.swing.*; import java.awt.*; import javax.swing.border.Et ... 
- linux: centos设置ip以及连接外网
			注明:我使用的的使centos 7,所有文件名是ifcfg-enp0s3, 一. 设置虚拟机中linux的ip,使本地能连通虚拟机的linux系统 1>.进入本地windows的cmd,输入ip ... 
