SQL Server自动化管理.docx
《SQL Server自动化管理.docx》由会员分享,可在线阅读,更多相关《SQL Server自动化管理.docx(21页珍藏版)》请在冰豆网上搜索。
![SQL Server自动化管理.docx](https://file1.bdocx.com/fileroot1/2023-4/16/49086b8e-4c9b-4088-b532-98f1cadac141/49086b8e-4c9b-4088-b532-98f1cadac1411.gif)
SQLServer自动化管理
SQLServer自动化管理
简介
任何一个曾今在半夜3点钟被叫醒,而只是为了去解决一个非常简单的问题的数据库管理员都会深深理解自动化的价值。
对于数据库管理员来说,每天都要完成大量的管理和维护数据库的任务。
通过自动化管理,可以大大的减轻管理员的负担和企业的维护成本。
下面将介绍如何通过SQLServer代理去建立作业,并计划安排作业以实现自动执行,如何建立维护计划去完成多个维护任务(例如备份一个或多个数据库),如何定义操作员以向其发送作业成功或失败的信息,以及如何配置警报已监视系统和执行的作业。
配置SQLServer代理
SQLServer有一个强大而灵活的作业计划引擎---SQLServer代理(Agent),SQLServer代理是一个windows服务,用于控制SQLServer自动化,它执行安排的管理任务,即“作业”SQLServer代理在SQLServer中存储作业信息作业包含一个或多个步骤,每个步骤都有自己的任务。
启动SQLServer代理服务
SQLServer代理默认为禁用状态,如果要运行自动化,应将其设为自动状态。
还必须开启系统自带信使服务,用于发送消息。
建立作业和操作员
数据库管理员通过使用SQLServer代理作业来自动执行日常管理任务,并且可以反复运行它们,从而提高管理效率,还可以指定操作员,当作业完成时通知操作员。
案例:
建立一个完整数据库备份的作业并在作业完成时通过NetSend命令通知操作员。
步骤:
打开SSMS,连接到SQLServer实例。
启动SQLServer代理
选择“SQLServer代理—操作员—新建操作员“如下图所示;单击确定
在对象资源管理器中,选择“作业”右击选择“新建作业”。
在新建作业窗口中,输入名称backyezi如图所示;
在备份数据库界面,设置备份文件
选择脚本按钮,在SSMS里生成脚本;
生成脚本后可以拷贝应用到任何场合。
在选择页中选择“步骤”,单击“新建”。
在新建作业窗口,输入“步骤名称”为fullback,类型选择“Transact-SQL脚本”,数据库选择要备份的数据库,在命令列表中输入上面生成的脚本,单击确定
在新建作业窗口的选择页中选择“通知”,选择“NetSend”复选框,并在其右边的下拉列表中选择caozuoyuan、当作业完成时,单击确定,如下图所示;
在作业队列中选择backyezi,右击选择“开始作业”,运行作业。
在运行结束后可以看到信使服务的消息,单击确定
在对象资源管理器中,选择“作业—作业活动监视器---查看作业活动”;
在作业活动监视器窗口的“代理作业活动”列表中选择backyezi,右击选择“查看历史作业”;
注意:
可以在作业属性中通过制定计划来定期的执行作业,一个作业可以连接一个或多个计划,多个作业也可以使用同一个计划。
警报
警报是对事件的自动响应。
可以针对一个或多个事件定义警报,警报还可以将事件转发到其他计算机上的micrsoftwindows应用程序日志中。
通过定义警报,事件管理员可以更有效的监视和管理SQLServer
案例:
某公司发现最近数据库的运行较慢,经过分析,发现主要是由于日志膨胀过快造成的,在清理了无用日志之后,公司要求管理员监控数据库的日志文件,当日志文件大于设定的值是报警,发送消息日志文件过大给管理员。
步骤:
在对象资源管理器中,选择SQLServer代理—警报,右击选择“新建警报”;
在新建警报窗口中设置如下图所示;
在新建窗口的“响应“页中,选择“通知操作员”复选框,选择caozuoyuan复选框,如图所示;
在“选项”选择页中,选择NETSend复选框,在“要发送的其他消息”文本框中输入“警报:
日志文件过大”,单击确定;
等一段时间后将弹出信使服务消息,如图;
维护计划向导
维护计划向导可以帮助管理员设置重要的维护任务,从而确保数据库运行良好,例如,做定期数据库备份以防系统出现故障,对数据库进行完整性检查等。
维护计划向导可以创建一个或多个作业,作业按照计划自动执行。
下面列出了可以安排成自动运行的一些维护任务:
备份数据库和事物日志文件
运行SQLServer代理作业。
收缩数据文件
对数据库内的数据执行内部一致性检查,确保系统或软件或软件故障没有损坏数据
案例:
设置维护计划,要求每周日晚12点完整备份master数据库
在SSMS中选择“管理—维护计划—维护计划向导”;
在“选择目标服务器”页中输入名称“维护计划”
在选择维护任务页中,选择“备份数据库(完整)”复选框;
单击下一步按钮;
在“定义备份数据库(完整)”任务中,设置如图所示;
在选择计划属性页中,单击“更改”;
在新建作业计划窗口中,设置如图所示;
在选择报告选项页中,选中“将报告写入文件文本”复选框,设置文件夹位置,如图;
单击完成
在管理下的维护计划目录中增加维护计划“维护计划向导”在SQLServer代理下的作业目录下增加了“维护计划向导”;
设置作业“维护计划向导”的属性,设置当作业执行完毕发送消息给管理员;、
可以执行维护计划,执行完毕后会收到消息;
注意:
建立维护计划事实上就是在计划中建立了SSIS包。