-- --使数据库维护自动化,对于确保数据库得到经常性的监控、维护和优化至关重要--监控:检测数据库的大小,以便在它们造成严重的后果之前发现问题--维护:经常性地进行备份--优化:更改索引的 ...
--使数据库维护自动化,对于确保数据库得到经常性的监控、维护和优化至关重要
--监控:检测数据库的大小,以便在它们造成严重的后果之前发现问题
--维护:经常性地进行备份
--优化:更改索引的配置以优化性能
--设置SQL Server代理
--警报、操作员、作业
--管理操作员
--管理警报
--管理作业
--数据库维护自动化
--使数据库维护自动化,对于确保数据库得到经常性的监控、维护和优化至关重要
--监控:检测数据库的大小,以便在它们造成严重的后果之前发现问题
--维护:经常性地进行备份
--优化:更改索引的配置以优化性能
--设置SQL Server代理
--启动SQL Server代理:SQL Server服务管理器->“SQL Server Agent”服务
--SQL Server代理属性:控制台->“管理”->“SQL Server代理”右键->“属性”
--要运行SQL Server代理服务,必须为其选择一个Windows帐户。在默认情况下,SQL Server代理是使用系统帐户的安全设置来运行的。由于
--系统帐户只能访问本地资源,如果你想要在调度的作业中访问网络资源的话,就必须使用域帐户。如:你有可能需要将一个数据库备份到
--另一个服务器上去。通常情况下,你还需要使用域帐户来使SQL Server能够通过电子邮件和呼叫程序发送通知信息。此外,你必须使用域
--帐户来进行复制。因此一般情况下,你应当使用属于sysadmin角色的成员的Windows域帐户来运行SQL Server代理,这样你就会具有足够
--的权限来运行作业或者发送通知消息了。
--系统帐户只能访问本地资源,如果你想要在调度的作业中访问网络资源的话,就必须使用域帐户。如:你有可能需要将一个数据库备份到
--另一个服务器上去。通常情况下,你还需要使用域帐户来使SQL Server能够通过电子邮件和呼叫程序发送通知信息。此外,你必须使用域
--帐户来进行复制。因此一般情况下,你应当使用属于sysadmin角色的成员的Windows域帐户来运行SQL Server代理,这样你就会具有足够
--的权限来运行作业或者发送通知消息了。
--要改变用于运行SQL Server代理服务的帐户,应当遵循以下步骤:
--1、打开SQL Server代理“属性”对话框
--2、如果需要的话,“常规”->“本地帐户”->输入用于运行该服务的windows域帐户的用户名和口令
--3、如果上面指定的帐户没有可以连接到SQL Server的适当权限,单击“连接”选项卡->“使用SQL Server身份认证”->输入登录帐户和口令
--1、打开SQL Server代理“属性”对话框
--2、如果需要的话,“常规”->“本地帐户”->输入用于运行该服务的windows域帐户的用户名和口令
--3、如果上面指定的帐户没有可以连接到SQL Server的适当权限,单击“连接”选项卡->“使用SQL Server身份认证”->输入登录帐户和口令
--要完成的最后一步工作是设置SQL Server代理邮件配置文件,以便在发生警报时,该服务能够通过电子邮件和呼叫程序发生通知信息。要
--做到这一点。需要创建和配置邮件服务,并使SQL Server知道应该如何访问该邮件服务。如果使用的邮件服务为Microsoft Exchange,
--就必须遵循以下的步骤来进行配置:
--1、在Exchange服务器上为SQL Server代理邮件创建一个Exchange电子邮箱。
--2、在数据库服务器上安装与MAPI兼容的邮件客户端软件(如Outlook)
--3、使用数据库服务器上控制面板中的“邮件”实用程序为SQL Server创建一个邮件配置文件。
--4、SQL Server代理的“属性”->“常规”->“邮件配置文件”下拉列表框中选择为SQL Server代理设置的邮件配置文件->“测试”
--做到这一点。需要创建和配置邮件服务,并使SQL Server知道应该如何访问该邮件服务。如果使用的邮件服务为Microsoft Exchange,
--就必须遵循以下的步骤来进行配置:
--1、在Exchange服务器上为SQL Server代理邮件创建一个Exchange电子邮箱。
--2、在数据库服务器上安装与MAPI兼容的邮件客户端软件(如Outlook)
--3、使用数据库服务器上控制面板中的“邮件”实用程序为SQL Server创建一个邮件配置文件。
--4、SQL Server代理的“属性”->“常规”->“邮件配置文件”下拉列表框中选择为SQL Server代理设置的邮件配置文件->“测试”
--警报、操作员、作业
--警报:警报定义了在满足特定条件时应当执行的指定操作。指定操作可以时通知一个或者多个操作员,也可以运行以个作业,或者同
--时完成这两项工作
--操作员:是负责处理数据库服务器上重大事件的人员。向操作员发送消息的方式有三种:电子邮件、呼叫程序或者网络发送
--作业:是一项数据库任务或者一组数据库任务。如:备份数据库、重组索引、执行数据转换服务(DTS)包等
--时完成这两项工作
--操作员:是负责处理数据库服务器上重大事件的人员。向操作员发送消息的方式有三种:电子邮件、呼叫程序或者网络发送
--作业:是一项数据库任务或者一组数据库任务。如:备份数据库、重组索引、执行数据转换服务(DTS)包等
--管理操作员
--创建操作员:控制台树->“管理”->“SQL Server代理”->“操作员”右键->“新建操作员”
--“常规”:填写操作员的名字,并根据你要通知他的方式,指定相应的电子邮件电子,呼叫程序电子邮件电子和/或网络发送地址
--“通知”:可以为每个警报选择相应的通知方法;“操作员可用于接收通知”:禁用这个操作员
--“常规”:填写操作员的名字,并根据你要通知他的方式,指定相应的电子邮件电子,呼叫程序电子邮件电子和/或网络发送地址
--“通知”:可以为每个警报选择相应的通知方法;“操作员可用于接收通知”:禁用这个操作员
--管理警报
--在安装SQL Server时已经预定义了9个的默认警报,当msdb或者tempdb的日志填满的时候触发其中两个警报,而严重度为19-25的错误
--则会分别触发其他7个警报,所有这些警报的名字都以“Demo:”打头,并处于启用状态。但是,在安装时并没有配置接收这些警报的
--操作员。由于严重度为19-25的错误都是致命的错误,所以你应该编辑这些警报的属性,并在每个处于生产状态的服务器上对它们
--进行正确的配置
--当配置数据库复制功能时,会创建7个警报,它们的名字都以“Replication:”打头。其中,复制代理的每个状态(成功、失败和重试)
--各对于一个警报;每个订阅状态(验证成功、验证失败和重新初始化)各对应一个警报;剩下的一个警报会在删除过期的订阅时触发。
--默认情况下,这些警报处于禁用状态,并且也米有为它们指派操作员
--则会分别触发其他7个警报,所有这些警报的名字都以“Demo:”打头,并处于启用状态。但是,在安装时并没有配置接收这些警报的
--操作员。由于严重度为19-25的错误都是致命的错误,所以你应该编辑这些警报的属性,并在每个处于生产状态的服务器上对它们
--进行正确的配置
--当配置数据库复制功能时,会创建7个警报,它们的名字都以“Replication:”打头。其中,复制代理的每个状态(成功、失败和重试)
--各对于一个警报;每个订阅状态(验证成功、验证失败和重新初始化)各对应一个警报;剩下的一个警报会在删除过期的订阅时触发。
--默认情况下,这些警报处于禁用状态,并且也米有为它们指派操作员
--创建用户定义错误
--控制台树->“服务器”右键->“所有任务”->“管理SQL Server消息”->“消息”选项卡->“新建”->选择合适的错误号、严重度、描
--述信息和语言,还可以指定是否将该信息写入Windows事件日志。
--还可以使用sp_addmessage系统存储过程来添加用户定义错误消息。在代码中,可以使用raiserror语句来触发这些用户定义消息
--控制台树->“服务器”右键->“所有任务”->“管理SQL Server消息”->“消息”选项卡->“新建”->选择合适的错误号、严重度、描
--述信息和语言,还可以指定是否将该信息写入Windows事件日志。
--还可以使用sp_addmessage系统存储过程来添加用户定义错误消息。在代码中,可以使用raiserror语句来触发这些用户定义消息
--创建警报:可以创建两种类型的警报:按照错误号或者错误的严重度来触发的;由SQL Server的性能计数器来触发
--控制台树->“管理”->“SQL Server代理”->“警报”右键->“新建警报”
--“常规”:“类型”:是SQL Server事件警报(按照错误号或者严重度触发),还是SQL Server性能条件警报
--“响应”:可以选择通知一个或者多个操作员,也可以选择执行一个作业,或者同时完成上述两项工作
--向导创建警报:“工具”->“向导”->“管理”->“创建警报向导”
--控制台树->“管理”->“SQL Server代理”->“警报”右键->“新建警报”
--“常规”:“类型”:是SQL Server事件警报(按照错误号或者严重度触发),还是SQL Server性能条件警报
--“响应”:可以选择通知一个或者多个操作员,也可以选择执行一个作业,或者同时完成上述两项工作
--向导创建警报:“工具”->“向导”->“管理”->“创建警报向导”
--管理作业
--作业由具有特定工作流程的一系列步骤构成
--有不少向导都是通过创建作业来完成所指定的任务的。如:维护计划向导、备份向导、DTS导出向导、DTS导入向导
--创建作业需要完成5个步骤:创建作业的定义;设置要执行的每个步骤;设置每个步骤的下一步操作;配置作业的调度日程;处理作业
--完成、成功和失败的通知消息
--有不少向导都是通过创建作业来完成所指定的任务的。如:维护计划向导、备份向导、DTS导出向导、DTS导入向导
--创建作业需要完成5个步骤:创建作业的定义;设置要执行的每个步骤;设置每个步骤的下一步操作;配置作业的调度日程;处理作业
--完成、成功和失败的通知消息
--1、创建作业分类(可选步骤)
--在定义作业时,可以为它指定一个分类,这样就可以将类似的作业组织到一起
--控制台树->“管理”->“SQL Server代理”->“作业”右键->“所有任务”->“管理作业分类”
--2、创建作业定义
--作业定义的只要工作是为作业指定一个唯一的名字,以便将来引用该作业时使用
--控制台树->“管理”->“SQL Server代理”->“作业”右键->“新建作业”
--“常规”:为作业指定一个唯一的名字,选择合适的分类以及作业的所有者,并输入关于该作业的一个简短描述。只有管理员可以改变
--已有作业的所有者。只有预定义的登录帐户可以作为作业的所有者。
--如果要配置涉及多个服务器的作业调度计划,就需要选择作为目标服务器的服务器(运行作业的服务器)。假如要在当前使用的服务器上
--运行作业,应当选择“以本地服务器为目标”。如果要在多个服务器上运行作业,应当选择“以多个服务器为目标”,并指定要运行
--该作业的那些服务器
--3、设置作业步骤
--在创建完成了作业的定义之后,就可以定义作业执行时要完成的步骤了
--“步骤”:“新建”->“常规”:输入步骤名;对于3个最常见的步骤类型(Transact_SQL脚本、ActiveX脚本和操作系统命令),可以
--输入代码或“打开”一个文件中的代码
--“高级”:确定在该步骤之后应当进行的下一步操作,也可以指定在该步骤第一次执行失败后应当重试的次数,以
--及在两次重试之间应当间隔的延迟时间(以分钟为单位)
--4、配置作业的调度计划
--在为指定的作业定义完步骤之后,还需要指定执行该作业的时机
--“调度”:“新建调度”
--5、处理完成、成功和失败的通知消息
--“通知”:指定当作业完成、失败或者成功时使用的通知方式。可以选择的方式有:向操作员发送消息(通过电子邮件、呼叫程序或者网络
--发送)、将相关的事件记入日志、自动删除作业,上述任意两种方式的组合、或者选择使用全部3种方式
--在定义作业时,可以为它指定一个分类,这样就可以将类似的作业组织到一起
--控制台树->“管理”->“SQL Server代理”->“作业”右键->“所有任务”->“管理作业分类”
--2、创建作业定义
--作业定义的只要工作是为作业指定一个唯一的名字,以便将来引用该作业时使用
--控制台树->“管理”->“SQL Server代理”->“作业”右键->“新建作业”
--“常规”:为作业指定一个唯一的名字,选择合适的分类以及作业的所有者,并输入关于该作业的一个简短描述。只有管理员可以改变
--已有作业的所有者。只有预定义的登录帐户可以作为作业的所有者。
--如果要配置涉及多个服务器的作业调度计划,就需要选择作为目标服务器的服务器(运行作业的服务器)。假如要在当前使用的服务器上
--运行作业,应当选择“以本地服务器为目标”。如果要在多个服务器上运行作业,应当选择“以多个服务器为目标”,并指定要运行
--该作业的那些服务器
--3、设置作业步骤
--在创建完成了作业的定义之后,就可以定义作业执行时要完成的步骤了
--“步骤”:“新建”->“常规”:输入步骤名;对于3个最常见的步骤类型(Transact_SQL脚本、ActiveX脚本和操作系统命令),可以
--输入代码或“打开”一个文件中的代码
--“高级”:确定在该步骤之后应当进行的下一步操作,也可以指定在该步骤第一次执行失败后应当重试的次数,以
--及在两次重试之间应当间隔的延迟时间(以分钟为单位)
--4、配置作业的调度计划
--在为指定的作业定义完步骤之后,还需要指定执行该作业的时机
--“调度”:“新建调度”
--5、处理完成、成功和失败的通知消息
--“通知”:指定当作业完成、失败或者成功时使用的通知方式。可以选择的方式有:向操作员发送消息(通过电子邮件、呼叫程序或者网络
--发送)、将相关的事件记入日志、自动删除作业,上述任意两种方式的组合、或者选择使用全部3种方式
转载于:https://blog.51cto.com/dusong/139437