您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > 14-SQL Server 代理服务
SQLServer代理服务杨之江yangzhijiang@126.com内容代理服务的基本概念SQLServer代理服务配置操作员作业警报Q&A1代理服务的基本概念SQLServer代理是一个任务规划器和警报管理器,在实际应用时,可以将周期性的工作定义成一个任务,在代理服务的帮助下自动执行;若出现故障,则代理服务自动通知操作员,操作员获得通知后及时排除故障。如此在任务、操作员、警报三者之间既相互独立,又相互联系、相互补充,构成了自动完成某些任务的有机整体通过使用代理服务,可以减轻管理员的工作强度,增强任务执行的准确性和可靠性。同时可对潜在的问题进行识别和响应一般在数据库中例行执行的维护和管理任务包括:备份数据库传输数据维护索引对潜在的问题可进行预先处理响应SQLServer错误。可以定义一些修正问题的任务来处理SQLServer的一些错误。例如,如果出现事务日志已满的错误,则可以定义一个执行一个备份并截断事务日志的任务监视潜在问题的性能条件。例如,可以定义SQLServerAgent服务来检测用户修改数据的时间,并自动通知系统管理员要使管理任务能够自动化,必须做到确定哪些管理职责或服务器事件需要定期执行并可以通过编程方式进行管理。使用SQLServer管理平台、Transact-SQL脚本来定义一组作业、警报和操作员。启动SQLServer代理服务。2SQLServer代理服务配置SQLServerAgent服务启动利用SQLServer管理平台配置代理服务2.1SQLServerAgent服务启动SQLServerAgent服务当事件发生时,SQLServerAgent服务与SQLServer服务进行通信以采取相应的行动。这些行动包括完成作业或者激活警报。在windows服务管理器或SQLServer配置管理器中启动EventLog服务SQLServer服务将事件写入WindowsNT应用程序事件日志中。2.2利用SQLServer管理平台配置代理服务1打开SQLServer管理平台,展开指定的服务器,用右键单击SQLServer代理图标,从快捷菜单中选择属性选项,则出现SQLServer代理属性对话框,选择常规页框,如图所示2选择高级页框,如图所示3选择警报系统页框,如图所示。使用此页可以查看和修改由SQLServer代理警报所发送的消息的设置4选择作业系统页框,如下图所示选择连接页框,如下左图所示。使用此页可查看和修改SQLServer代理服务与SQLServer之间的连接设置选择历史记录页框,如下右图所示。使用此页可以查看和修改用于管理SQLServer代理服务历史记录日志的设置3操作员操作员就是当警报发生时通过电子邮件、寻呼或WindowsNT网络消息传递命令(netsend)通知的人员,让他们处理所发生的事件或了解任务的执行情况创建一个操作员的执行步骤打开SQLServer管理平台,展开SQLServer代理,右击操作员图标,从快捷菜单中选择新建操作员选项,则出现新建操作员属性对话框,如下左图所示。选择通知页框,如下右图所示,使用此页可设置向操作员通知的警报和作业4作业作业是由SQLServer代理程序按顺序执行的一系列指定的操作。作业可以执行更广泛的活动,包括运行Transact-SQL脚本、命令行应用程序、MicrosoftActiveX脚本、复制任务、AnalysisServices任务、IntegrationServices包可以创建作业来执行经常重复和可调度的任务,并且作业可以产生警报以通知用户作业的状态定义作业需要完成如下三部分内容定义作业:定义作业的名称、类型、内容和执行步骤,以及作业执行过程中输出内容的存储位置等。调度作业:设置作业的执行时间或时间段以及执行频率等参数。作业执行结果的处理:设置作业执行完成后的通知方式,即是否需要将其作为事件记录到WindowsNT的事件日志中,或是通知操作员。创建一个作业的执行步骤(1)打开已经启动的SQLServer代理,用右键单击作业图标,从快捷菜单中选择新建作业选项,则出现新建作业属性对话框,如下图所示。在General标签页定义了作业的Name,Category,Owner,Description属性各选项含义如下Name是指作业的名称,同一台服务器上的作业名必须是惟一的,其最大长度为128个字符Category表示作业目录可以将那些具有某些共同点的作业归至同一作业目录下Owner表示作业的所有者,sysadmin角色用户可以改变作业的所有者Description表示对作业的描述信息最大长度为512个字符Enabled表示作业有效否则必须手工启动创建一个作业的执行步骤(2)每个作业必须有一个或者多个步骤,所以,除了定义作业属性外,在保存作业前,还至少要定义一个作业步骤。如下图所示Stepname步骤名称,其长度不超过128个字符,一个作业内的步骤名必须惟一Type步骤的类型,该下拉框内各选项的含义分别为✦ActiveScript运行一个脚本语言程序✦OperationSystemCommand(CmdExec)执行.exe.cmd.bat文件✦Transact-SQLScript(TSQL)Database当作业步骤类型为TSQL时所使用的数据库Command该作业步骤要执行的命令创建一个作业的执行步骤(3)选择新建作业步骤对话框中的高级页框,如下图所示。选择NewJobSteps对话框的Advanced标签页,其中各选项的含义为OnsuccessAction定义该步骤成功执行后将执行的活动,其中下拉框中的各选项的含义分别为✦QuittheJobReportingSuccess如果成功则结束作业✦QuittheJobReportingFailure如果失败则结束作业✦GototheNextStep让SQLServerAgent去执行下一步RetryAttempts如果该步执行失败则重新执行的次数RetryInterval在重新执行前等待的时间OnFailureAction定义该步骤执行失败后将执行的活动OutputFile存储该步骤执行结果的文件RunasUser允许系统管理员以另外的用户身份来执行这一步作业创建一个作业的执行步骤(4)选择新建作业中的计划页框,如下图所示NewSchedule各选项含义分别为Name日程表的名称,在ScheduleType选项区设置作业执行的频率和时间StartautomaticallywhenSQLServerAgentStart表示在SQLServerAgentStart启动时执行该作业StartwhenevertheCPU(s)becomeidle表示在CPU空闲时执行该作业,在缺省情况下空闲的含义是指CPU的利用率低于10%持续时间为6分钟,可在SQLServerAgentProperties对话框的Advance标签页进行设置Onetime该作业执行一次Recuring按一定时间间隔执行该作业创建一个作业的执行步骤(5)选择Notifications标签页,其中各选项的含义为E-mailoperator在作业完成时,表示以电子邮件方式通知操作员,在右面的下拉框中选择操作员Pageoperator在作业完成时以寻呼方式通知操作员,在右面的下拉框中选择操作员Netsendoperator在作业完成时通过网络发送网络信息通知,操作员在右面的下拉框中选择操作WritetoWindowsNTapplicationeventlog在作业完成时将完成的作业写入NT应用事件日志AutomaticallydeleteJob在作业完成时自动删除该作业单击确定按钮,完成作业的创建5警报事件警报性能警报禁用或重新激活警报5.1事件警报默认情况下,下列SQLServer事件将被记入到MicrosoftWindows应用程序事件日志中:Sysmessages系统表中定义的错误级别为19或更高级别的错误。使用系统存储过程sp_altermessagewithlog指定的错误级别低于19的错误消息。所有使用WITHLOG选项的RAISERROR语句所产生的错误消息。建议使用RAISERRORWITHLOG从SQLServer实例写入Windows应用程序事件日志。所有使用xp_logevent记录的事件。必须先定义警报,然后再发出通知。创建事件警报创建事件警报步骤如下:(1)打开SQLServer管理平台,展开指定的服务器,然后展开启动的SQLServer代理,用右键单击警报图标,从快捷菜单中选择新建警报选项,则出现新建警报属性对话框,从中选择常规页框,如图所示。(2)选择响应页框,如图所示。其中,“执行作业”下拉框用于选择出现警报时执行的作业;在要通知的操作员项下的表格中,用于显示把警报送给哪些操作者,并定义以哪种方式(电子邮件、寻呼、Netsend)传送(3)选择选项页框,如图所示。其中,“警报错误文本发送方式”用于选择把警报写入哪种(电子邮件、寻呼程序、Netsend)通知当中;“要发送的其他通知消息”文本框用于输入传送给操作员的附加消息;“两次响应之间的延迟时间”表示警报连续两次响应的时间间隔。5.2性能警报为了优化系统的运行性能,经常需要在SQLServer运行过程中监视其各项性能的指标,以便查找问题所在,找出改善系统性能的方法。SQLServer的性能监视器就是这样一种监视工具。性能警报能够将SQLServerAgent服务的警报功能与SQLServer性能监视器的功能结合起来。当系统某一性能达到、低于或超过所设定的阀值时,SQLServerAgent服务就触发警报,通知操作员进行处理,从而实现对系统运行性能的自动监视。5.3禁用或重新激活警报在警报定义完成后,可以暂时禁用警报,以后再重新激活警报,步骤如下:在管理平台中依次展开“管理”和“SQLServer代理”目录,单击“警报”节点。在右边的内容窗格中在要禁用或重新激活的警报上右击鼠标,在弹出的菜单中选择“属性”命令。在弹出的窗口中,若清除“启用”复选框,表示要禁用警报;若选中“启用”复选框,表示要重新激活警报。小结代理服务是数据库管理系统为减轻管理员的负担,同时也为提高数据库管理的可靠性和准确性而提供的一项功能。在SQLServer提供的代理服务中,主要包含三方面的内容:操作员作业警报代理服务需要SQLServerAgent服务的支持,同时也需要有操作系统服务以及操作系统事务日志的配合。代理服务是数据库管理系统提供给用户的一个非常方便的功能Question&AnswerThankyou
本文标题:14-SQL Server 代理服务
链接地址:https://www.777doc.com/doc-3222756 .html