您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 其它办公文档 > XXXX数据库实践教程_6第六章_自动化管理任务
1主讲教师:钱哨交通部管理干部学院计算机系钱哨教案第六章.自动化管理任务SQLServer2005数据库实践教程——管理与维护篇2自动化管理任务概述配置代理服务器管理作业与警报,设置作业与警报36-1自动化管理任务概述了解自动化管理任务的基本概念,学习自动化管理任务的优点及组件掌握配置代理服务器技术46-1自动化管理任务概述1、自动化管理任务的概念所谓自动化管理任务是指系统可以根据预先的设置自动地完成某些任务和操作。2、自动化管理任务的分类一般地,把可以自动完成的任务分成两大类:一类是执行正常调度的任务;另一类是识别和回应可能遇到的问题的任务。3、正常调度的任务:所谓的执行正常调度的任务,就如同在MicrosoftSQLServer系统中执行一些日常维护和管理的任务,可以包括备份数据库、传输和转换数据、维护索引、维护数据一致性等。56-1自动化管理任务概述6-1-1自动化管理任务的优点自动化管理任务的主要优点表现在:1.减少了管理方面的工作负荷,使得DBA将精力集中在其他作业任务上,例如规划数据库的结构或者优化数据库的性能。2.降低因忽视重要维护任务而导致的风险。3.降低在执行数据库维护任务时人为错误的风险。4.通过警报进行主动管理,自动化的阻止一些可能问题的发生。66-1自动化管理任务概述6-1-2自动化管理的组件自动化组件包括:WindowsEventLog、MSSQLServer和SQLServer代理。MSSQLServer服务是MicrosoftSQLServer系统的数据库引擎,负责把发生的错误作为事件写入Windows的应用程序日志中。如果MicrosoftSQLServer系统或应用程序发生了需要引起用户注意的任何错误或消息,且把这些错误或消息写进了Windows的应用程序日志,则这些错误或消息就是日志。WindowsEventLog服务负责处理写入Windows的应用程序日志中的事件,这些事件可以包括:MicrosoftSQLServer系统中严重等级在19~25之间的任何错误;已经定义将要写入Windows的应用程序日志中的错误消息;执行RAISERRORWITHLOG语句。当SQLServer代理服务启动时,它就在Windows的事件日志中注册并且连接到MicrosoftSQLServer,这样就允许SQLServer代理服务接受任何MicrosoftSQLServer的事件通知。76-1自动化管理任务概述6-1-3SQLSERVER代理1、作业的概念SQLSERVER代理(SQLServerAgent)说到底就是一个Windows的后台服务和可以执行安排的管理任务,这个管理任务也被称为“作业”。每个作业包含了一个或多个作业步骤,每个步骤都可以完成一个任务。SQLSERVER代理可以在指定的时间或在特定的事件条件下执行作业里的步骤,并记录作业的完成情况,一旦执行作业步骤出现错误,SQLServer代理还可以设法通知管理员。86-1自动化管理任务概述6-1-3SQLSERVER代理实验1:设置SQLServer代理服务为自动启动实验第一步:打开SQLServerConfigurationManager,鼠标右键选中其中的“SQLServer2005Agent”服务,打开快捷菜单中的“属性”对话框。如图所示96-1自动化管理任务概述6-1-3SQLSERVER代理实验1:设置SQLServer代理服务为自动启动实验第二步:在打开的“属性”对话框中切换到代理服务器的“服务”页面,选择启动模式为“自动”。如图所示。当然也可以通过点击开始-运行,然后键入services.msc,运行后找到SQLServer2005Agent,双击设置为自动启动。(请读者自行尝试)106-1自动化管理任务概述6-1-3SQLSERVER代理实验2:设置SQLServer代理服务始终运行实验第一步:在SQLServerManagementStudio中,用鼠标右键选中打开实例中的“SQLServer代理”,打开快捷菜单中的“属性”对话框,选择常规选项卡,如图所示。116-1自动化管理任务概述6-1-3SQLSERVER代理实验2:设置SQLServer代理服务始终运行实验第二步:选中复选框“SQLServer意外停止时自动重新启动”和“SQLServer代理意外停止时自动重新启动”,将确保SQLServer和SQLServer代理意外停止后可以自动启动。如图所示。126-2管理作业与警报了解操作员的概念掌握创建作业的基本步骤掌握如何创建警报的步骤学习通过T-SQL创建作业和操作员,以及创建自动化综合任务136-2管理作业与警报6-2-1操作员操作员是在完成作业或者出现警报时候可以接收消息的人员或者组的别名,通常应当在定义警报之前定义操作员。作业在完成或者失败时候,可以通过电子邮件、网络消息和寻呼机方式通知操作员。146-2管理作业与警报6-2-1操作员实验1:创建操作员实验第一步:在SQLServerManagementStudio中,用鼠标右键点击打开实例中“SQLServer代理”里面的“操作员”,打开快捷菜单中的“新建操作员”对话框。如图所示。156-2管理作业与警报6-2-1操作员实验1:创建操作员实验第二步:分别在打开的创建操作员用户界面中录入操作员名称和电子邮件的名称,但是这里的电子邮件有效方式是在建立电子邮件服务器后指定的用户邮件地址,因此首先应当确保电子邮件服务器是已经配置好并成功启动的,而且应当为具体的用户设置好邮件地址。166-2管理作业与警报6-2-2创建作业的基本步骤一般我们都是通过SQLServerManagementStudio创建作业,作业步骤的定义被存储在msdb数据库的sysjobsteps系统表中。作业的执行内容可以包括:TSQL脚本,操作系统命令,ActiveX脚本,复制任务,磁盘备份任务等。176-2管理作业与警报6-2-2创建作业的基本步骤每个具体的作业只能够是下列一种执行类型:1、TSQL脚本TSQL脚本可以包括Transact-SQL语句和存储过程,但必须指定具体的操作数据库,详细的操作参数和变量,以及具体操作的磁盘文件等,而且上述的各项内容必须是真实存在的。2.操作系统命令操作系统命令就是Windows操作系统的可执行命令,包括:.exe、.bat.、.cmd、.com后缀文件,而且需要制定这些文件的完整磁盘路径,以及执行命令的退出命令,以指示命令成功完成。3.ActiveXActiveX是一个打开的集成平台,为开发人员、用户和Web生产商提供了一个快速而简便的在Internet和Intranet创建程序集成和内容的方法。使用ActiveX,可轻松方便的在Web页中插入多媒体效果、交互式对象、以及复杂程序。186-2管理作业与警报6-2-2创建作业的基本步骤实验1:创建简单作业实验第一步:在SQLServerManagementStudio中,用鼠标右键点击打开实例中“SQLServer代理”里面的“作业”,打开快捷菜单中的“新建作业”对话框。196-2管理作业与警报6-2-2创建作业的基本步骤实验1:创建简单作业实验第二步:在作业属性对话框的常规选项页中,分别在名称中命名新作业为“BackUpDatabase1”,该作业说明为“备份school数据库”206-2管理作业与警报6-2-2创建作业的基本步骤实验1:创建简单作业实验第三步:选择“步骤”选项页,“新建”作业步骤,在新建作业页面命名步骤名称“backupstep1”,选择数据库为school,类型为T-SQL脚本,并录入命令脚本“backupdatabaseschooltoDISK='c:\schoolbackup.bak'withnoinit”,点击分析后成功建立步骤216-2管理作业与警报6-2-2创建作业的基本步骤实验1:创建简单作业实验第三步:在作业步骤属性的选择页中点击“高级”项,并在操作界面将“成功时要执行的操作”选项选择为“退出报告成功的作业”,并将输出追加到“输出文件”中,点击确定保存配置信息226-2管理作业与警报6-2-2创建作业的基本步骤实验1:创建简单作业实验第四步:选择“计划”选项页,“新建”作业计划,在新建作业计划页面命名作业计划名称为“backupschoolplan”,执行频率为每天,每天频率为每分钟(主要为了观察实验方便),点击确定后建立新的计划。最后回到建立计划界面,完成建立计划的工作。236-2管理作业与警报6-2-3创建警报1、SQLServer允许创建警报以显示系统可能遇到的各种错误,包括SQLServer错误、用户定义错误或者对系统的性能条件等做出必要的响应。2、警报是联系写入Windows事件日志中的MicrosoftSQLServer错误消息和执行作业或发送通知的桥梁3、在MicrosoftSQLServer系统中,错误代号小于或等于50000的错误或消息是系统提供的错误使用的代号,用户定义的错误代号必须大于500004、错误等级也是错误是否触发警报的一种条件。在MicrosoftSQLServer系统中,提供了25个等级的错误。在这些错误等级中,19~25等级的错误自动写入Windows的应用程序日志中,这些错误是致命错误。以上的各种错误警报的具体含义,读者可以通过执行查询语句“select*fromsysmessages”具体进行查看。246-2管理作业与警报6-2-3创建警报5、警报与作业不同之处在于,作业是由SQLServer代理服务来掌控的,在什么时间做什么事情都是我们预订好的。我们能意识到将要处理的事情是什么样的结果,但是警报不是,警报是在出现意外的情况下应该怎么去做SQLServer定义警报的方式主要有三种:1.根据SQLServer错误定义警报若要创建SQLServer错误时候发出的警报,可以通过指定一个错误编号(如9002:数据库的事务日志已满。)或特定的严重程度(如17)来定义警报。2.根据SQLServer性能条件定义警报除了使用警报响应SQLServer错误以外,还可以使用警报响应SQLServer的性能条件(如“Windows系统监视器”上查看到的性能条件)。当超过某个激发条件时候,将激发警报。3.根据WMI事件定义警报WMI是一项核心的Windows管理技术,WMI作为一种规范和基础结构,通过它可以访问、配置、管理和监视几乎所有的Windows资源256-2管理作业与警报6-2-3创建警报实验1:创建简单警报实验第一步:在SQLServerManagementStudio中,用鼠标右键点击打开实例中“SQLServer代理”里面的“警报”,打开快捷菜单中的“新建警报”对话框。如图所示。266-2管理作业与警报6-2-3创建警报实验1:创建简单警报实验第二步:在弹出的“新建警报”对话框的常规选项页中,分别录入警报名,选择警报类型和时间警报定义的数据库,以及根据哪些条件发出警报。276-2管理作业与警报6-2-3创建警报实验1:创建简单警报实验第三步:在弹出的“新建警报”对话框的响应选项页中,勾选“执行作业”,通过下拉列表选择执行作业(如果没有则点击“新建作业”完成);勾选“通知操作员”,并选择上节中定义的操作员,通知的方式选择为“电子邮件”。如图6-15所示。最后点击确定,完成对警报的创建工作286-2管理作业与警报6-2-4通过T-SQL实现自动化管理任务1.创建作业创建作业的系统存储过程是sp_add_job,其基本的语法格式如下:sp_add_job[@job_name=]'job_name'[,[@enabled=]enabled][,[@owner_login_name=]'login'][,[@notify_level_eventlog=]eventlog_level][,[@notify_level_email=]email_level][,[@notify_level_netsend=]net
本文标题:XXXX数据库实践教程_6第六章_自动化管理任务
链接地址:https://www.777doc.com/doc-13291 .html