SQL维护计划教程.doc
《SQL维护计划教程.doc》由会员分享,可在线阅读,更多相关《SQL维护计划教程.doc(39页珍藏版)》请在三一办公上搜索。
1、SQL Server数据库维护计划的详细实施步骤作为网管员,无论其管理的网络的规模是大还是小,在日常的管理中除了维护网络平稳运行、及时排除网络故障、保护网络安全等工作以外,备份网络中关键数据也是其中的一个非常非常重要的工作环节。网络中的各种故障无非就分两种:软件故障和硬件故障。对于“硬件故障”可以通过维修或更换硬件设备得到及时解决;对于“软件故障”则可以通过重新安装或升级软件、重做网络或应用软件系统等方法及时解决,而且用此方法来解决网络故障大多需要一些基础的、关键的数据支持才能得以恢复正常。但是,网络中诸如此类的关键数据(特别是“应用软件系统”中的关键数据)的损坏或丢失,绝大部分是无法恢复和弥
2、补的。即使可以恢复部分数据,弥补它们所花费的代价(诸如时间、人力、财力、物力等)都可能远远超出了公司的承受能力。所以说,注重数据的备份工作是网管员日常管理工作中的必须时刻关注的一项任务,也是必须周期性重复操作的一项工作。目录现行备份策略具体实现步骤结束语现行备份策略我公司在组建局域网时,考虑到商业企业的特点,仔细考量了购、销、存三大环节中发生的各种数据及其存储问题后,选定了以Windows 2000 Server为操作系统,SQL Server 2000为数据库平台来搭建局域网的应用系统的软件平台,以网线为载体将购、销、存等核心部门的计算机通过局域网平台紧密地连接起来。这样,各个核心部门每天的
3、任何一笔业务都及时地、动态地存储到公司局域网的核心Dell服务器上的SQL Server 2000数据库中,并以此为基础平台向各方提供所需的各种数据服务。因此,自公司局域网开始正式运作之日起,作为网管员的我就非常注重对局域网中的关键数据特别是这些业务数据的备份工作。同时,我也希望备份数据的软件能够实现以下自动功能。功能1:能够在每天的某个固定的时刻(如夜晚0:00:00,当然这个时间是可以自主设定的)对包含所有业务数据库在内的所有关键数据库进行一次“完全备份”。功能2:能够在每天的0:00:00至23:59:59这段时间内,每间隔1个小时对功能1中所涉及到的各个数据库的事务日志进行“差异备份”
4、。功能3:每天都能够保留功能1和功能2中所生成的数据库和事务日志的最近两天的备份(即:前一天的和前两天的),而且能够自动地删除久于两天前的所有数据库和事务日志的备份。功能4:定期(如每个星期一次)将所有关键数据库的完全备份的副本备份到磁带或其它存储介质上(这部分工作可能需要手工完成)。于是,围绕这些功能的实现,在日常管理工作中,我尽可能地尝试了各种备份数据的软件和方法,如Windows 2000自带的“备份”工具、SQL Server 2000自带的“备份”功能等。这些备份软件和方法的功能各有千秋,但是都存在以下缺点:一种就是需要人工干预,无法实现自动备份(如Windows 2000自带的“备
5、份”工具)。如果采用这种方法,就必须时刻人工手动备份,万一哪天因为出差或其它原因没有进行备份,而这时又出现服务器或数据故障的话,那麻烦就大了。另一种就是能够实现自动备份,但是旧的备份不能被自动地删除(如SQL Server 2000自带的“备份”功能)。如果采取这种方法,就必须及时地手工删除旧的备份,否则再大的硬盘也会迅速地被用完。在相互比较后,我还是决定采用第二种SQL Server 2000自带的“备份”功能对关键数据库进行备份,因为它能够实现“自动备份”功能,比第一种略强。所以,在一段时期内,我每天上班后的第一件事就是先检查一下备份目录下各种数据的新的备份,然后手工删除旧的备份数据。这种
6、做法一度让我很是苦恼。一天,我在利用SQL Server 2000的“帮助”查询某个Transact-SQL语句的语义解释时无意中阅读到“自动化管理任务”的内容。从头到尾地仔细阅读后,我不由得眼睛一亮,原来SQL Server 2000本身自带了一个能够实现我的备份要求的、强大的功能“数据库维护计划”。于是我立刻按照这部分内容的提示,以一个数据库为试验样本一步一步地操作,成功地创建了一个数据库维护计划。经过一个星期的试运行,这个计划果然能够实现自动备份调度,以及自动删除旧的数据备份,完全能够满足我的备份要求。从那时起,我就利用SQL Server 2000的“数据库维护计划”备份所有关键数据库
7、,而且严格地、定期地执行功能4,每个星期五将完全备份的数据库备份到磁带和局域网中其它客户机(主要是用于网络管理的网管PC)的硬盘上。这样做的目的是,能同时异地保存三份相同的备份,减少故障带来的损失。而且,通过SQL Server 2000的“数据库维护计划”,我现在能够较轻松地备份所需各种数据,方便地管理其备份,相应地减少了日常工作量,也减轻了部分工作压力。具体实现步骤目录第一步:打开SQL Server“企业管理器”窗体第二步:找到“数据库维护计划”功能第三步:创建“数据库维护计划”第四步:维护和管理“数据库维护计划”第五步:启动SQL Server 2000代理以便执行“作业”第六步:检查
8、结果“数据库维护计划”功能在SQL Server 2000的“企业管理器”中可以找到。说明:1.以下操作是在服务器的Windows 2000 Server上进行操作的。在Window 9X系统上操作相同。2.由于SQL Server 2000执行备份时将产生许多文件(特别是在进行事务日志备份时),所以建议按数据库名称分别建立独立的备份目录进行存储。3.以下所有操作过程当中一般不会对数据库的使用产生影响。第一步:打开SQL Server“企业管理器”窗体用鼠标单击任务栏上的“开始”按钮中的“程序(P)”菜单下的“Microsoft SQL Server”子菜单中的“企业管理器”菜单项,即可打开S
9、QL Server 2000的“企业管理器”窗体。第二步:找到“数据库维护计划”功能在“企业管理器”窗体中左侧的树型选项卡中,用鼠标单击“+”图标扩展开“控制台根目录”下的“Microsoft SQL Servers”,可以看到其下有一个“SQL Server组”;接着继续扩展开“SQL Server组”,此时可以看到其下出现了服务器的名称(图1中的“JXNC-SERVER”就是我的服务器的名称);再继续扩展开此服务器,可以看到其下列出了诸如“数据库”、“数据转换服务”等项目;最后单击“管理”项目,可以看到其下存在一个“数据库维护计划”(如图1)。单击“数据库维护计划”项目,在“企业管理器”窗
10、口右侧将会显示出已经存在的维护计划项目。每个维护计划均包括以下项目:1.名称:就是维护计划的名称。此名称可以自定义,中英文皆可。2.数据库:就是维护计划所进行维护的数据库的名称。因为一个维护计划允许同时维护多个数据库,所以此处可以显示出多个数据库的名称(在图1中可以看到名为“系统数据库备份”的数据库维护计划中的“数据库”就包括三个数据库:master、model和msdb)。3.服务器:也就是维护计划所维护的数据库所处的服务器的名称。“(local)”表示是本地服务器。4.对策:是指维护计划所需要进行的具体维护工作的内容。图1中有3个“数据库维护计划”均为“数据库备份,事务日志备份”,它的含义
11、就是这些维护计划中同时对所指定的数据库进行“数据库”和“事务日志”的备份。第三步:创建“数据库维护计划”鼠标右击“数据库维护计划”项目,选择“新建维护计划(P)”功能,将打开“数据库维护计划向导”窗体,依照此向导能够创建一个新的“数据库维护计划”。步骤1:单击 “下一步(N)”按钮,打开“选择数据库”窗体(如图2)。在此窗体中可以选定一个或多个的数据库作为操作对象。为了叙述方便,我在此只选择了一个数据库“regie”。步骤2:单击图2中的“下一步(N)”按钮,打开“更新数据优化信息”窗体(如图3)。在此窗体中可以对数据库中的数据和索引重新进行组织,以及能够设定在满足一定条件的情况下,维护计划自
12、动删除数据库中的未使用的空间,以便提高性能。但要注意的是,在此窗体中,只要选定了“重新组织数据和索引页R”复选框,“更新查询优化器所使用的统计。示例D”复选框将失效(变成灰色,不能选择)。而且“重新组织数据和索引页R”复选框和“从数据库文件中删除未使用的空间M”复选框二者只要有一个被选中,其下的“调度S”功能才有效。单击“更改C”按钮可以对“调度”进行自定义。各位读者可以根据自身情况决定是否选用其中的功能。当然也可以通过单击“帮助”按钮来查看各功能的具体含义。在此窗体中能够便捷地设定每项作业的持续运行时间和运行的频率。完成自己的设置后,一定要选定右上角的“启用调度B”复选框,这样一个作业调度才
13、算真正完成了。步骤3:单击图3中的“下一步(N)”按钮,打开“检查数据库完整性”窗体。在此窗体中可以设定维护计划在备份数据库前自动检查数据库的完整性,以便检测由于硬件或软件错误而导致数据的不一致。在此窗体中只有先选定了“检查数据库完整性H”复选框,其下Sql Server 2005 数据库维护计划这个星期开始为了减轻工作压力开始使用数据库维护计划(SQL Server Maintenance Plan Wizard)维护数据库,由于以前都没用过,在个人使用的免费版(Express)里也没有这个功能,所以现在好好学习了一番,这里总结一下。维护计划向导可以用于帮助您设置核心维护任务,从而确保数据库
14、执行良好,做到定期备份数据库以防系统出现故障,对数据库实施不一致性检查。维护计划向导可创建一个或多个 SQL Server 代理作业,代理作业将按照计划的间隔自动执行这些维护任务。它使您可以执行各种数据库管理任务,包括备份、运行数据库完整性检查、或以指定的间隔更新数据库统计信息。创建数据库维护计划可以让SQL Server有效地自动维护数据库,保持数据库运行在最佳状态,并为管理员节省了宝贵的时间。以下是可以安排为自动运行的一些维护任务:用新填充因子重新生成索引来重新组织数据和索引页上的数据。这确保了数据库页中包含的数据量和可用空间的平均分布,还使得以后能够更快地增长。通过删除空数据库页压缩数据
15、文件。更新索引统计信息,确保查询优化器含有关于表中数据值分布的最新信息。这使得查询优化器能够更好地确定 访问数据的最佳方法,因为可以获得数据库中存储数据的详细信息。虽然 SQL Server 会定期自动更新索引统 计信息,但是此选项可以对统计信息立即进行强制更新。对数据库内的数据和数据页执行内部一致性检查,确保系统或软件故障没有损坏数据。备份数据库和事务日志文件。数据库和日志备份可以保留一段指定时间。这使您可以为备份创建一份历史记录 ,以便在需要将数据库还原到早于上一次数据库备份的时间的时候使用。还可以执行差异备份。运行 SQL Server 代理作业。这可以用来创建可执行各种操作的作业以及运
16、行这些作业的维护计划。维护任务生成的结果可以作为报表写入文本文件,或写入 msdb 中的 sysmaintplan_log 和 sysmaintplan_log_detail 维护计划表。若要在日志文件查看器中查看结果,请右键单击“维护计划”,再单 击“查看历史记录”。以下是详细说明:Check Database Integrity(检查数据库完整性)任务检查指定数据库中所有对象 的分配和结构完整性。此任务可以检查单个数据库或多个数据库,您还可以选择是否也检查数据库索引,检查所有索引页以及表数据页的完整性。此任务封装 DBCC CHECKDB 语句。生成的代码:-检查当前数据库,取消信息性消息
17、DBCC CHECKDB WITH NO_INFOMSGSShrink Database(收缩数据库任务)收缩数据库任务”对话框可以创建一 个任务,尝试减小所选数据库的大小。此任务封装了 DBCC SHRINKDATABASE 命令。选项:Shrink database when it grows beyond当数据库大小超过指定值时收缩数据库,指定引发此任务的数据库大小(MB)。Amount of free space to remain after shrink收缩后保留的 可用空间,当数据库文件中的可用空间达到此值时停止收缩。Retain freed space in database
18、files选择在数据库文件中保留所释放的文件空间。如果指定 NOTRUNCATE 选项,数据文件好像没有收缩。Return freed space to operating system选择把数据文件中任何未使用空间被释放给操作系统。无需移动任何数据即可减小文件大小。生成的代码:-选择Retain freed space in database filesDBCC SHRINKDATABASE (NAdventureWorks, 10, NOTRUNCATE)-选择Return freed space to operating systemDBCC SHRINKDATABASE(NAdvent
19、ureWorks, 10, TRUNCATEONLY)Reorganize Index(重新组织索引)重新组织 SQL Server 数据库表和视图中的索引。 通过使用“重新组织索引”任务,包可以重新组织单个数据库或多个数据库中的索引。如果此任务仅重新组织单个数据库中的索引,则可以选择任务要重新组织其索引的视图或表。“重新组织索引”任务还包含压缩大型对象数据的选项。大型对象数据是具有 image 、text、ntext、varchar(max)、nvarchar(max)、varbinary(max) 或 xml 数据类型的数据。此任务封装了 Transact-SQL ALTER INDEX
20、语句。如果选择压缩大型对象数据,则该语句使用 REORGANIZE WITH(LOB_COMPACTION = ON) 子句,否则 LOB_COMPACTION 将设置为 OFF。生成代码:(只选择了Employee表)-选择compact large objectsALTER INDEX PK_Employee_EmployeeID ON HumanResources.Employee REORGANIZE WITH ( LOB_COMPACTION = ON )-不选择ALTER INDEX PK_Employee_EmployeeID ON HumanResources.Employee
21、 REORGANIZE WITH ( LOB_COMPACTION = OFF )Rebuild Index(重新生成索引)重新生成 SQL Server 数据库表和视图中的索引。包可 以重新生成单个数据库或多个数据库中的索引。如果任务仅重新生成单个数据库中的索引,则可以选择任务要 重新生成其索引的视图和表。使用默认可用空间重新组织页删除数据库中表上的索引,并使用在创建索引时指 定的填充因子重新创建索引。此任务封装 ALTER INDEX REBUILD 语句并提供下列索引重新生成选项:Reorganize pages with the default amount of free space
22、指定 FILLFACTOR 百 分比或使用原始的 FILLFACTOR 量。Change free space per page percentage to:填充索引使用 PAD_INDEX 选项可以在索引创建过程中设置中间级页中的可用空间百分比。将每页的可用空间百分比更改,删除数据库中表上的索引,并使用新的、自动计算的填充因子重新创建索引,从而在索引页上保留指定的可用空间。Sort results in tempdb使用 SORT_IN_TEMPDB 选项,该选项确定在索引创建 过程中生成的中间排序结果的临时存储位置。使用索引的IGNORE_DUP_KEY 选项,该选项指定对唯一聚集或非聚集
23、索引上多行 INSERT 事务中的重复键值的错误响应 。Keep index online while reindexing使用 ONLINE 选项,用户可以在索引操作期间访问基础表或聚集索引数据以及任何关联的非聚集索引。生成代码:(只选择了Employee表)ALTER INDEX PK_Employee_EmployeeID ON HumanResources. Employee REBUILD WITH ( FILLFACTOR = 90, PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQL 维护 计划 教程
链接地址:https://www.31ppt.com/p-2395105.html