SQL Server代理的阶梯 - 第2级:作业步骤和子系列

作者:Richard Waymire,2017/10/11(第一版:2011/02/17)

原文链接:http://www.sqlservercentral.com/articles/SQL+Agent/Job+Steps+and+Subsystems/72268/

该系列

本文是“Stairway系列:SQL Server代理的阶梯”的一部分。

SQL Server Agent是任何实时数据库系统的核心。代理有许多用途并不总是显而易见的,因此对于开发人员和DBA来说,系统知识总是有用的。理查德Waymire提供了一个简单的解释,它的许多用途。 SQL Server代理作业由一系列一个或多个作业步骤组成。作业步骤被分配给特定的作业子系统,该作业子系统标识作业步骤要执行的作业种类。每个作业步骤都在单独的安全上下文中运行,尽管每个作业也都有一个拥有者来决定谁可以修改作业。本文将重点介绍组成SQL Server代理作业的作业步骤和子系统。 快速审查工作

思考SQL Server代理作业的最佳方法是将一组其他组件关联起来,这些组件是执行给定任务所需的。工作的主要组成部分是工作步骤,时间表,警报和通知。

创建作业时,将所有者分配给作业。如第1级中所述,默认情况下,所有者将是创建作业的用户(在Transact-SQL中,通过sp_add_job系统存储过程或使用SQL Server Management Studio)。 SQL Server代理的大部分功能假定您是系统管理员角色成员。如果您是,那么您或任何其他系统管理员角色成员可以在创建作业后对其进行修改。如果您希望非系统管理员角色成员能够修改作业,则应该将作业所有者更改为该用户的登录名。请注意,系统管理员成员可以更改任何作业,而不考虑作业所有权。 工作步骤

如第1级中所述,SQL Server代理作业至少由一个作业步骤组成。当大多数人想到从事某项工作的工作时,他们对于SQL Server的真正意义是一个工作步骤。作业步骤由您希望执行的操作类型定义,每个作业步骤将由以下作业子系统之一执行: •ActiveX •操作系统(CMDExec) • 电源外壳 •各种复制任务 •SQL Server分析服务(SSAS)命令(即XML / A) •SQL Server Analysis Services(SSAS)查询(MDX) •SQL Server集成服务(SSIS)包(SQL Server 2000中的DTS包) •Transact-SQL脚本(T-SQL) 让我们创建一个作业和必要的作业步骤,备份主数据库。创建一个新的工作,我叫我的“备份主”,如图1所示。

 

 

1 - 创建一个新的工作

现在点击Steps选项卡查看作业步骤,然后点击New ...打开New Job Step对话框(图2)。

 

2 - 创建一个新的工作步骤

我已经完成了这个工作中的步骤,在开始备份之前对master数据库进行完整性检查。我可以一步完成所有工作,但是要在步骤之间向您展示工作流程。我已经给出了“检查主数据库完整性”的名称,并将类型设置为Transact-SQL。数据库上下文是主。我在文本框中输入一个简单的命令: DBCC CHECKDB 有几个解释是为了这个对话。 “类型”下拉列表是选择SQL Server代理子系统的位置。下面将描述可能的子系统。 Transact-SQL作业步骤没有安全代理帐户,所以作业步骤将在作业所有者的上下文中运行。安全代理帐户使作业步骤能够与不同用户的安全上下文一起运行,并且通常用于不属于sysadmin角色成员的作业。 您选择的作业子系统将更改对话框其余部分的内容。对于Transact-SQL作业步骤,提供了一个简单的文本框供您键入Transact-SQL,如我在此处所做的那样。每个工作步骤可能都有一个与之相关的不同子系统。 接下来,点击新的作业步骤的高级选项卡。您将看到如图3所示的屏幕。“成功”操作定义了作业步骤成功完成后发生的情况。默认选项是转到下一步,这意味着如果作业中有多个步骤,并且这个步骤有效,则执行下一步。如果您点击下拉菜单,您将看到其他选项 - 包括退出作业(通过成功或失败通知)或跳转到另一个步骤。请注意,最后一个选项,跳到另一个步骤,直到你至少在工作中的第二步,才会显示出来。

3 - 新的作业步骤高级选项

如果由于某种原因某个步骤失败,则可以选择可以尝试重试该作业步骤的次数。 您也可以在每次尝试成功完成作业步骤之间指定延迟(以分钟为单位)。 下面是失败操作(即作业步骤无法完成或以错误代码结束)。 选项与成功相同,使用不同的默认值(如您所期望的)。 由于这是Transact-SQL作业步骤类型,因此可以将Transact-SQL命令的任何输出记录到输出文件(就像sqlcmd中的-o选项一样)。 您也可以将结果记录到一个表(MSDB中的sysjobstepslogs表)。 单击确定,然后单击新建以向作业添加第二步。 假定步骤1没有产生错误,则下一步作业将备份主数据库。 这里是我的系统的命令(如图4所示):

BACKUP DATABASE [master] TO DISK =

N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Backup\master.bak'

WITH INIT

4 - 备份主数据库的第二个作业步骤

由于这是作业的结束,请单击“高级”选项卡,然后选择“成功”操作为“退出作业报告成功”。就是这样 - 您应该能够单击“确定”并查看已完成的作业步骤,如图所示5。

5 - 完成的工作

 

现在单击确定完成定义作业,并运行作业。 当您点击运行作业时,请注意,因为您现在被问到多个步骤,您想要从哪个步骤开始作业。 从第一步开始执行作业(如图6所示),并在第一步成功运行时观察作业流程,然后转到作业的第二步和最后一步

6 - 在步骤开始作业(选择步骤1)

一旦成功完成,作业被标记为成功并退出(如图7所示)。

7 - 作业已成功运行

作业子系统     有七个主要的工作子系统,你会使用。此数字不包括复制子系统,因为它们是特殊情况,通常这些作业步骤和作业是由复制组件创建的,而不是由DBA创建的。我们将推迟讨论三个分析服务子系统,因为它们有几个独特的考虑因素。 Transact-SQL脚本(T-SQL)     Transact-SQL子系统非常简单,可能是您创建的最常见的作业类型。它允许您针对SQL Server代理所附属的SQL Server本地实例运行Transact-SQL(但不包括对Transact-SQL的sqlcmd扩展)。请注意,与Analysis Services子系统不同,您只能连接到本地SQL Server实例。另请注意,Transact-SQL没有代理功能,因此T-SQL的作业步骤始终在作业所有者的安全上下文中运行。 ActiveX脚本     ActiveX子系统允许您运行VBScript,Jscript或其他自定义脚本语言(理论上)。脚本将默认在SQL Server代理服务帐户的安全上下文中运行。如果你精通VBScript,这可能是一个方便的子系统,但是从SQL Server 2008开始,这个子系统已经被弃用,你应该使用PowerShell子系统。 操作系统(CmdExec)     CmdExec子系统允许您运行操作系统命令(就像打开了命令提示符一样)。这些命令将在SQL Server代理服务帐户的安全上下文中运行。在这里(以及在ActiveX子系统中)要记住的关键是没有用户能够点击或接受任何提示,因此请确保脚本在没有用户干预的情况下运行。 电源外壳     PowerShell子系统允许您运行兼容Windows PowerShell 1.0或2.0的脚本。与其他脚本子系统一样,该脚本将默认在SQL Server代理服务帐户的安全上下文中运行。 PowerShell非常强大,您应该认真研究增长PowerShell的知识。 PowerShell将允许您连接到远程系统,所以这是解决Transact-SQL子系统连接到SQL Server远程实例的一个方法。 下次    正如您所看到的,SQL Server Agent作业步骤是作业内容的核心。许多不同的子系统是可用的,每个子系统都有不同的功能。在这个阶段的下一个步骤中,我将研究代理功能以增强作业步骤的安全性,以及Analysis Services的其他SQL代理子系统。

 

转载于:https://www.cnblogs.com/heqian1025/p/8214790.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/267794.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何快速将文本中的tab更换成逗号(图文详解)

不多说,直接上干货! 现有一份数据如下。 下载日志数据并分析 到搜狗实验室下载用户查询日志 1) 介绍 搜索引擎查询日志库设计为包括约1个月(2008年6月)Sogou搜索引擎部分网页查询需求及用户点击情况的网页查询日志数据集合。为进行中文搜索引擎用户行为…

Commit Monitor–svn监控工具

SVN更改通知的工具,在这里分享给大家。 自己负责的模块代码有时被同事修改,但是没有知会,也不容易了解到具体的改动内容,可能造成各种各样的问题。这里推荐一个工具Commit Monitor,可以监控svn仓库的提交记录&#xff…

java如何实现Socket的长连接和短连接

讨论Socket必讨论长连接和短连接 一、长连接和短连接的概念 1、长连接与短连接的概念:前者是整个通讯过程,客户端和服务端只用一个Socket对象,长期保持Socket的连接;后者是每次请求,都新建一个Socket,处理完一个请求就…

疯狂的java 目录_疯狂创客圈 JAVA 高并发 总目录

无编程不创客,疯狂创客圈,一大波编程高手正在交流、学习中!疯狂创客圈: JAVA 高并发 研习社群, QQ群:104131248(已满) 236263776 (请加此群)疯狂创客圈 经典图书 : 《Netty Zookeeper Redis 高并发实战…

也谈云计算

云计算的介绍和讨论不时见诸于报章网端,但是基本上是各说各话,众说纷纭中让大家仍然感觉云里雾里,不见明路。 本文没有涵盖全部的观点,但却希望提供一种思路,大家共同探讨云的建设。云计算是英文Cloud Computing的翻译…

用phpmyadmin更改root密码的方法

首先用root账号登陆phpmyadmin,然后点击左侧进入mysql数据库,在顶部点击“mysql”进入sql输入界面。输入以下命令: update user set passwordpassword(root) where Userroot root为你希望修改的密码,切记不要在数据库中直接手工修…

Android开发 ---多线程操作:Handler对象,消息队列,异步任务下载

效果图&#xff1a; 1、activity_main.xml 描述&#xff1a;定义了六个按钮 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas.android.com/apk/res/android"android:id"id/activity_main&quo…

Lunx运维监控_shark巨菜_基础篇

Lunx运维监控_shark巨菜_基础篇一、监控重要性单单从“监控”两个字来谈&#xff0c;范围之广可以涵盖我们生活的方方面面&#xff0c;我们生活和工作中处处可见视频监控的摄像机&#xff1b;机房中的电压电流监控、干湿计、温度计&#xff1b;值班室的网络监控&#xff0c;网站…

java项目皮肤包_java swing项目皮肤包+使用方法说明

这是java swing项目皮肤包使用方法说明下载&#xff0c;项目可用的皮肤包&#xff0c;总共四个&#xff0c;自己下载总结的&#xff0c;包含使用代码说明。直接在main函数最开始加入说明代码即可使用~~~加入代码后记得处理异常&#xff01;软件介绍java swing项目皮肤包使用方法…

WinXP的EFS加密文件如何解密?

根据网上流传的资料&#xff0c;EFS&#xff08;Encrypting File System&#xff09;EFS加密是基于公钥策略的。在使用EFS加密一个文件或文件夹时&#xff0c;系统首先会生成一个由伪随机数组成的FEK(File Encryption Key&#xff0c;文件加密钥匙)&#xff0c;然后将利用FEK和…

关于滚动条出现页面跳动问题

二、CSS3计算calc和vw单位巧妙实现滚动条出现页面不跳动 很简单&#xff0c;只要一行代码就搞定了&#xff1a; .wrap-outer {margin-left: calc(100vw - 100%); } 或者&#xff1a; .wrap-outer {padding-left: calc(100vw - 100%); } 然后就可以庆祝放鞭炮啦&#xff01;&…

17款漂亮的 HTML5 网站模板免费下载

在过去的几年&#xff0c;设计师们已开始关注和使用 HTML5 了&#xff0c;如今 HTML5 得到了更加广泛的应用。今天&#xff0c;本文与大家分享17款免费的 HTML5 网站模板&#xff0c;看看有没自己喜欢的。 1- Smart Net 免费下载 2- Photo Art 免费下载 3- The Art Of Business…

java动态生成sdk_android、java制作sdk以及自动生成文档

最近一直在做android开发&#xff0c;昨天经理让我写个接口SDK做个接口文档&#xff0c;以便后面的开发。这让我很焦灼&#xff0c;SDK怎么做&#xff1f;要是只有敲代码还好。可是那个接口文档&#xff01;&#xff01;&#xff01;文档这东西最讨厌了&#xff0c;头都大了后来…

利用 Selenium 自动化 web 测试

Selenium 是一个健壮的工具集合&#xff0c;跨很多平台支持针对基于 web 的应用程序的测试自动化的敏捷开发。它是一个开源的、轻量级的自动化工具&#xff0c;很容易集成到各种项目中&#xff0c;支持多种编程语言&#xff0c;比如 .NET、Perl、Python、Ruby 和 Java™ 编程语…

乌班图 之 常用操作命令(二)

一、tree命令 tree [目录名]  以树状图列出文件目录 -d 只显示目录&#xff0c;不显示文件。 二、cp命令 cp即copy   cp 源文件 目标文件 -i  重名自动 覆盖 加了 -i 提示   y/n -r  复制目录及该目录下所有字目录和文件&#xff0c;目标文件必须是一个目录名。 三、…

Exchange2010外部传输域的使用方法

安装好EX2010后并不能马上与外部邮件进行收发&#xff0c;需要进行以下几个配置&#xff1a; 1、配置接收连接器 2、配置接受域 3、配置发送连接器 可以参考这个链接&#xff1a;http://www.chinaemail.com.cn/server/xtfl/Exchange/201101/59114.html 下面以我的实例来说明一…

Shiro安全框架入门篇

一、Shiro框架介绍 Apache Shiro是Java的一个安全框架&#xff0c;旨在简化身份验证和授权。Shiro在JavaSE和JavaEE项目中都可以使用。它主要用来处理身份认证&#xff0c;授权&#xff0c;企业会话管理和加密等。Shiro的具体功能点如下&#xff1a; &#xff08;1&#xff09;…

asp.net ajax1.0基础回顾(七):综合应用

本文将通过学生信息管理来介绍asp.net ajax的综合应用实例&#xff0c;包括“浏览”、“查询”、“添加”和“多选删除”功能&#xff0c;以及其它相关设计。 本示例源代码下载地址&#xff1a;http://down.51cto.com/data/220541 本示例中&#xff0c;程序架构参考Petshop&…

ASP.NET MVC3书店--第五节 表单编辑(第二部分)(转)

http://blog.sina.com.cn/s/blog_6ad539a90100r469.html5.5 使用HTML帮助器来截短文字 使用我们的StoreManager控制器中的Index方法添加视图的时候&#xff0c;有一个潜在的问题。事实上&#xff0c;我们的书名与作者名属性的长度值可能超出页面上 所定义的这两个列的长度。我们…

前端“黑话”polyfill

前言 在Web前端开发这个日新月异的时代&#xff0c;总是需要阅读一些最新的英文技术博客来跟上技术的发展的潮流。而有时候会遇到一些比较高频的“黑话”&#xff0c;在社区里面可能已经是人人皆知的“共同语言”&#xff0c;而你接触的少就偏偏看不懂。就像现在几乎所有中国人…