翻译:Stairway to SQL Server Agent: Level 1: Setup and Overview

原文链接:https://www.sqlservercentral.com/steps/stairway-to-sql-server-agent-level-1-setup-and-overview

                                                                                                       -------理查德-Waymire,2013-01-02(首次发布:2011-02-17)

第1级:SQL Server代理设置和概述

SQL Server代理是SQL Server的作业调度和警报服务,如果使用得当,它可以大大简化数据库管理员(DBA)的工作负载。

SQL Server Agent的核心是运行批处理作业的工具。“批处理”只是一组“操作”,通常使用Transact-SQL脚本定义。然后,这些可以按照特定的时间表作为作业运行,您可能会选择在少数用户访问系统时; 换句话说,它们被安排为使用SQL Server代理的批处理作业。这些批处理作业可以是从简单的T-SQL任务到跨多个SQL Server实例和多台计算机运行的复杂多系统作业。SQL Server代理还允许您通过电子邮件通知用户,例如,特定批处理作业何时完成,或何时发生错误(级别3中包含通知引擎)。

作为DBA,您很可能会立即使用SQL Server代理在新的SQL Server部署上调度作业。例如,您的第一份工作可能是备份系统数据库,并使用邮件警报来告知您备份作业是完成还是失败。 后续作业可能包括设置和安排用户数据库的备份,索引维护操作(重建或重组)等。如果您正在管理一个相当简单的SQL Server系统,那么您将启用维护计划作业调度,例如,使用SSMS数据库维护计划向导。

本文是Stairway中探索SQL Server Agent功能的第一个层次,并讨论如何充分利用SQL Server Agent。它将介绍SQL Server Agent的大部分组件和功能,展示如何运行服务,并演示如何从SSMS创建和运行简单的批处理作业。然后,后续级别将深入钻取每个主要组件,包括如何使用SMO,PowerShell和Transact-SQL使用SQL Server代理。

本系列将重点介绍SQL Server 2005,SQL Server 2008和SQL Server 2008 R2; 但是,本系列中的大部分信息也适用于SQL Server 2000。

让SQL Server代理运行

在SQL Server的初始设置期间,默认情况下不启用SQL Server代理,因此使用SQL Server代理的第一个简单步骤是运行SQL Server代理服务。

将代理设置为使用SQL Server自动启动

若要将SQL Server代理设置为自动启动,请打开“Microsoft SQL Server 2008”中的SQL Server配置管理器实用程序“配置工具”文件夹。您需要成为本地Windows管理员(或与其中一个最好的朋友)才能运行此实用程序。

启动后,该实用程序应自动连接到本地计算机。单击树中的“SQL Server服务”选项。在右侧面板中,您应该看到已安装的SQL Server服务的列表。其中一个应该是“SQL Server代理(instancename)”,其中instancename是安装SQL Server时使用的实例的名称,如果您正在配置默认实例,则是“MSSQLSERVER”。如果启动模式已设置为自动,很好,则在设置期间已正确配置。如果没有,请双击SQL Server代理,单击出现的属性对话框中的“服务”选项卡,然后单击“开始模式”旁边的下拉列表。选择Automatic,然后单击Apply(参见图1.1,了解它的外观)。现在SQL Server代理将在服务器重新启动时自动启动,并且SQL Server正在运行。如果由于某种原因SQL Server代理未运行,请立即启动该服务。

图1.1  -  SQL Server代理的SQL Server配置管理器

服务帐户选择

您需要确保根据计划对SQL Server代理执行的操作配置相应的服务帐户。如果您继续操作,则表示您位于SQL Server代理属性的“服务”选项卡上。单击“登录”选项卡。对于SQL Server代理的基本操作,您可以使用内置帐户,例如网络服务(服务帐户将设置为在初始安装SQL Server期间选择的任何内容)。图2显示了选择对话框。只需从“内置帐户”下的列表中选择“网络服务”即可。如果您打算让SQL Server代理连接到远程计算机(例如,复制文件或管理多个系统),那么您将需要切换到使用域用户帐户(该帐户所涵盖的“此帐户”选项 - 如图1.2);可能是专门为此目的而创建的。这是您需要从域管理员请求的内容。从域管理员的角度来看,您将需要一个普通的用户帐户。在任何一种情况下,选择正确的服务帐户,一旦进行了任何更改,您将需要选择“重新启动”按钮以使新更改生效。完成后,单击“确定”按钮以完成SQL Server代理服务的配置。您可以在http://msdn.microsoft.com/en-us/library/cc281953.aspx上阅读有关服务帐户选择的更多信息。

图1.2  -  SQL Server代理的服务帐户选择

创建你的第一份工作

现在SQL Server代理正在运行,您可以创建第一个作业。 通过演示,我们将设置一个工作来执行一个关键的DBA任务,即备份系统数据库,这样就可以创建一个自动化的工作,而不必记住手动备份这些数据库。 那会为你做的。

工作

作业是单个逻辑任务的核心容器,例如备份数据库。 该任务将包含一个或多个作业步骤。 作业可能包括通知(例如,如果作业失败,则通过电子邮件发送DBA),计划(当您希望作业运行时),甚至可以在多个系统上运行。 但是,对于我们的第一个备份工作,我们将保持简单。要创建作业,请打开SSMS并连接到SQL Server实例。 展开“SQL Server代理”节点,然后右键单击“作业”。 选择创建新作业的选项(“New Job ...”),如图1.3所示。

图1.3  - 启动新作业对话框

作业有许多组件,如图1.4所示。

图1.4  - 新作业对话框

我们将该工作命名为“备份主数据库”。 这将是用于在SSMS GUI或PowerShell中引用作业的名称。 工作类别可以是组织工作的有用方式,但是第一份工作设置类别并不重要。 您将学习如何在更高级别指定类别。 在“描述”框中,写下一些可以帮助您记住创建此作业的原因以及它应该执行的操作。 请记住,其他人可能必须稍后管理此系统,因为他们没有创建这项工作,他们不知道它应该完成什么以及它是否至关重要。

完成所有这些后,你基本上完成了创建作业'shell',它只是你在新作业对话框中看到的所有组件的'shell容器'。 作业最重要的部分是其他选项卡上的组件。

工作步骤

SQL Server代理中的作业至少由一个作业步骤组成。 当大多数人认为SQL Server工作执行某些工作时,他们的真正含义是工作步骤。 作业步骤由您希望执行的操作类型定义,并包括运行以下作业子系统的功能:

  • ActiveX        
  • 操作系统(CMDExec)        
  • PowerShell    
  • 各种复制任务        
  • SQL Server Analysis Services(SSAS)命令(即XML / A)        
  • SQL Server Analysis Services(SSAS)查询(MDX)        
  • SQL Server Integration Services(SSIS)包(SQL Server 2000中的DTS包)        
  • Transact-SQL脚本(T-SQL)

对于大多数SQL Server DBA,大多数作业将使用最后一种类型的作业步骤T-SQL。 作业可以作为作业所有者运行,也可以使用其他安全上下文,具体取决于作业所有者的权限和代理的配置。下一级将详细介绍作业步骤和子系统。

正如您在SSMS GUI中看到的,控制作业步骤的选项卡简称为“步骤”。 现在点击它,我们将创建一个工作步骤。 单击对话框底部的“新建”按钮,将启动“新建作业步骤”对话框(参见图1.5)。

图1.5  - 新工作步骤

给作业步骤一个有用的名称 - 在我们的例子中,作业名称和步骤名称可能相同 - “备份主数据库”。 作业步骤类型将是T-SQL,因为我们将使用简单的BACKUP命令进行数据库备份。您现在可以忽略“运行方式”,因为默认情况下我们将作为作业所有者(即您)运行作业步骤。 默认情况下,数据库正确设置为我们正在做的事情,即在master中工作。

对于命令本身,您可以打开文件,或复制并粘贴您在查询窗口中编写的一些有效的T-SQL。 为了简单起见,我们正在做一个简单的备份命令。如果未在C驱动器上安装SQL Server,则需要将文件位置更改为适用于计算机的位置。我正在展示的示例来自SQL Server的简单虚拟机安装,所有这些都在一个硬盘上。 您不应该在这样的单个硬盘驱动器上看到生产SQL Server!

 BACKUP DATABASE master
	TO DISK='C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Backup\master.bak'
	WITH INIT

完成后,它应如图1.6所示。单击“确定”以创建作业步骤。

 

图1.6  - 完成的工作步骤

工作时间表

作业计划控制何时实际启动作业。有四种类型的工作时间表:       

  • SQL Server代理启动时自动启动        
  • 每当CPU空闲时启动        
  • 定期        
  • 一度

大多数作业计划都是Recurring类型(例如,周日晚上7点每周运行一次备份)。计划是SQL Server代理中的单独对象,并且计划可以连接到多个作业。

对于我们的工作,我们希望每周备份数据库。因此,单击Schedules选项卡,然后选择New以创建新的作业计划,如图1.7所示。将作业计划命名为实用的(因为它们可以在作业之间共享)。我将这个时间表称为“每周系统备份”。幸运的是,这个页面上的默认值会很好!我们将每周运行一次,周日,午夜。在为计划命名后单击“确定”,然后再次单击“确定”以完成作业创建。

图1.7  - 新的工作时间表

运行刚刚创建的作业

既然我们已经创建了备份作业,那么运行该作业以验证我们是否正确完成了所有操作是个好主意。 即使我们将此作业安排为每周运行一次,我们也可以按需手动运行作业。 在SSMS中,在Jobs文件夹下,您现在应该看到您的工作。 右键单击Job,然后选择“Step at Step ...”,如图1.8所示。作业将运行,现在您的主数据库已备份。

图1.8  - 在SSMS中启动作业

下一步是什么?

在接下来的几个级别中,我们将更深入地探索SQL Server代理的每个区域,以及作业和警报可以极大地增强SQL Server系统功能并使您的生活更轻松的具体示例。下一级将侧重于创建和配置作业步骤,了解各种作业子系统以及作业步骤安全性。

本文是SQL Server Agent的父楼梯Stairway的一部分。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值