当前位置:资源吧源码资讯中心数 据 库MS_SQL → 文章内容

管理作业自动化

减小字体 增大字体 作者:未知  来源:CSDN  发布时间:2006-4-27 2:40:11
管理作业自动化
SQL Server代理程序服务
作业
警示
SQL Server代理程序错误记录文件
本章总结
在 第 30 章 中我们看了几项自动化设定的选项,以及 SQL Server 2000 提供的数据库选项,这些选项帮助 DBA 减少了的调整作业。在本章中将学会使用 SQL Server 提供的辅助工具,以透过 SQLServer 代理程序服务来自动执行其它的管理作业。SQLServer 代理程序服务包括自动定期执行数据库的特定作业,以及服务器发生问题或事件时,通知 DBA 或其它特定人员。这些功能的好处使得 DBA 不需要用手动或不断监控数据库系统来决定何时执行特定作业,因此有更多时间用在更难的数据库问题上,如建立和调整索引、最佳化查询、或者为未来的成长预作计划。
自动化管理作业有三个主要工具:作业、警示、和操作员。在本章中,您将学会关于 SQLServer 代理程序服务,以及如何使用服务来建立及使用作业、警示、与操作员。您也可以找到关于 SQLServer 代理程序错误纪录,这个纪录可用来追踪 SQLServer 代理程序执行的工作。
SQLServer 代理程序服务
 
SQLServer 代理程序执行从 SQL Server 独立出来的服务,称为 SQLServer 代理程序。这个服务包含在 SQL Server 2000 之中,但是必须单独启动,手动或自动均可。 第 8 章 有关于启动 SQLServer 代理程序的方法说明。一旦启动服务,就要准备好定义所需要的作业、警示、和操作员。
________________________________________
说明
SQLServer 代理程序服务在 Microsoft SQL Server 6.5 中被称为 SQL Executive。它也可以用作复写,如 第 26 、 27 、 28 章 的说明。
________________________________________
作业
 
 作业 (Jobs)是管理任务,只要定义一次就可以执行好几次。您可以手动执行作业,或者用 SQL Server 安排在特定时间执行,也可以定期执行或是警示发生时执行( < 警示 > 稍后会作说明)。作业可以由 SQL Server 陈述式、Windows NT 或 Windows 2000 指令、可执行程序、ActiveX 指令码组成。作业也可以在您使用复写或建立数据库维护计划时自动帮您建立。一个作业可由单一步骤或很多步骤组成,而每个步骤可以是一个更复杂的呼叫组合步骤─例如呼叫预存程序。SQL Server 自动监控作业的成败﹔两种情况都可以设定警示。
作业可以在本地端服务器执行,或者您在网络上有多重服务器,可以指定一台作为主要服务器,其它的作为目标服务器。主要服务器替全部的服务器储存作业定义,并且作为作业清理处,协调一切作业活动。每个目标服务器定期与主要服务器相连,若有作业变更就更新作业清单,从主要服务器下载新作业,然后切断联机来执行新作业。当目标服务器完成作业时,它会再与主要服务器连接并报告它的结束状况。
我们来看看建立作业的一个假设情况。假设您有个数据库数据表,保存了每笔银行的交易纪录,例如存提款和转帐。每笔记录有一个 timestamp 数据行说明交易何时发生。这个数据表将不断增长并且需要定期删除数据。要从数据表中删除一列,您可以用 DELETE 陈述式写一个小的预存程序来删除两个月之前的旧数据(假设银行只要保留两个月的数据)。接着您可以建立一个作业来执行这个预存程序,例如每周日晚上执行一次。这样一来,您可以确保数据表不会无限制地增长。这不但可以保留磁盘空间,而且还能提升效能。执行查询时表格中的数据越少,SQL Server 就能越快完成查询。现在让我们来看看建立作业的细节。
________________________________________
说明
SQLServer 代理程序服务必须依序执行才能使您的作业正常运作。
________________________________________
建立作业
 
您可以用 Enterprise Manager、T-SQL 指令文件、建立作业精灵、或 SQL-Distributed Management Objects (SQL-DMO)来定义作业。因为 SQL-DMO 方法与计算机的程序编制有关,不在本书的范围之内。本章节您将学会其它三种有关建立作业的方法。
________________________________________
相关信息
关于使用 SQL-DMO 来建立作业,请参阅< 在线丛书 >并索引< SQL-DMO >。
________________________________________
使用 Enterprise Manager
 
先用 Enterprise Manager 建立作业。最常用的方法之一是执行数据库备份(这也可以如 第 30 章 所提的利用 维护计划精灵 来完成)。下面的例子是建立作业备份 MyDB 数据库。它安排备份在每晚 11:00 执行,并在 Windows NT 或 Windows 2000 应用事件纪录和输出档案中纪录备份作业的成败。跟着下面步骤建立名为 MyDB_backup_job 的作业:
1. 在 Enterprise Manager 左边的窗格中,展开一个服务器数据夹,展开 管理 数据夹,然后展开 SQL Server代理程序 数据夹。在 作业 上点选右键并在快捷菜单上选择 新增作业 。显示 新增作业属性 窗口,如图31-1所示。
 
 
图31-1 新增作业属性 窗口的 一般 页签
2. 在 一般 页签中设定下列选项:
o  名称 键入作业名称─这里是在文字方块中键入『MyDB_backup_job』。作业名称最多可以有 128 个字符。服务器上的每个作业都必须是唯一的名称,并要确定使用描述性的名字。
 
o  启用 该复选框指定作业应该启动还是停用。您可能想要先停用作业以手动测试来确保运作正常。测试后得知运作正常,就可以用这个复选框启动作业,这样作业就能如期执行。
 
o  作业类别 为这个作业选择类别-在这个例子中,我们使用预设类别 未分类(本机) 。您可以从已建立的作业类别中选择,这些作业类别是安装 SQL Server 时建立的,或者也可以建立您自己的类别(想学习如何建立新类别,请参阅本章后面 < 建立新类别 > 一节)。安装的类别有 Uncategorized (Local)、数据库维护计划、全文检索、Web 辅助程序,还有复写的 10 个类别。类别是用来归类相关作业的。例如,您可以将用来执行数据库维护的作业归于同一个类别中,或是依部门分类,如会计、销售、和市场营销。类别让您能够追踪多重作业-您就不须为了一小部份的作业而花时间搜寻所有作业清单。
 
o  拥有者 建立作业的使用者。只有 sysadmin 角色可以更改谁拥有作业或是变更其它使用者拥有的作业(SQL Server 角色将在 第 34 章 中说明)。所有 sysadmin 角色与作业拥有者都可以改变作业的定义,也可以启动或停止作业。在 拥有者 下拉式选单中,选择将执行作业的使用者。本例中,作业拥有者和建立作业者是同一人,所

[1] [2] [3] [4] [5] [6] [7] [8]  下一页