《第13章 数据库的日常维护与管理.ppt》由会员分享,可在线阅读,更多相关《第13章 数据库的日常维护与管理.ppt(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数数 据据 库库 原原 理理 与与 应应 用用(SQL Server 2005)第第1313章章 数据库的日常维护与管理数据库的日常维护与管理 第第13章章数据库的日常维护与管理数据库的日常维护与管理任务目标:p理解备份与还原的概念p掌握使用T-SQL语句实现数据库备份的方法p会使用SSMS进行数据库备份p掌握使用T-SQL语句还原数据库的方法p会使用SSMS还原数据库p了解数据的导入与导出的方法p掌握作业的创建与管理方法p了解警报的创建方法第第13章章数据库的日常维护与管理数据库的日常维护与管理13.1数据库备份与还原 13.2备份数据库 13.3还原数据库 13.4数据导入与导出13.5作
2、业 习题与实验13.1数据库备份与还原数据库备份与还原 13.1.1备份与还原概述备份与还原概述 备份就是指对数据库或事务日志进行拷贝。数据库备份记录了在进行备份这一操作时数据库中所有数据的状态,如果数据库因遭到意外而损坏,这些备份文件将被用来恢复数据库。执行备份操作必须拥有对数据库备份的权限许可,SQL Server 2005只允许系统管理员(Sysadmin)、数据库所有者(dbo)和数据库备份执行者(db_backupoperator)进行备份数据库。在数据库备份之前,应该检查数据库中数据的一致性,这样才能保证数据库备份在以后能够顺利地被还原。还原数据库是一个装载数据库备份,然后应用事务
3、日志重建的过程。应用事务日志之后,数据库就会还原到最后一次事务日志备份之前的状态。在数据库的还原过程中,用户不能进入数据库,当数据库还原后,数据库中的所有数据都会被替换掉。13.1数据库备份与还原数据库备份与还原13.1.2备份类型及备份设备备份类型及备份设备 1、备份类型、备份类型 SQL Server 2005的备份一般可分为四种类型:数据库完整备份、差异备份、事务日志备份以及文件和文件组备份。(1)数据库完整备份是指包含一个或多个数据文件的完整映像的任何备份。数据库完整备份会备份所有数据和足够的日志,以便恢复数据。完整备份可以对全部或部分数据库、一个或多个文件进行数据备份。(2)差异备份
4、基于之前进行的数据库完整备份,称为差异的“基准备份”。基准备份是差异备份所对应的最近完整或部分备份。差异备份仅包含基准备份之后更改的数据。在还原差异备份之前,必须先还原其基准备份。(3)事务日志备份(也称为“日志备份”)中包括了在前一个日志备份中没有备份的所有日志记录。只有在完整恢复模式和大容量日志恢复模式下才可以进行事务日志备份。(4)文件和文件组备份是针对某一个文件或文件组的复制。13.1数据库备份与还原数据库备份与还原13.1.2备份类型及备份设备备份类型及备份设备 2、备份设备、备份设备 SQL Server将数据库、事务日志和文件备份到备份设备上。在创建数据库备份时,必须选择备份设备
5、。SQL Server使用物理设备名称或逻辑设备名称标识备份设备。(1)物理备份设备是指磁带机或操作系统提供的磁盘文件。物理备份设备的名称包括物理路径和文件名,如“C:BackupSGMS.bak”。(2)逻辑备份设备是用户给物理设备定义的一个别名。逻辑设备的名称保存在SQL Serve 2005数据库的系统表中。逻辑设备的优点是可以简单地使用逻辑设备名称而不用给出复杂的物理设备路径,使用逻辑设备也便于用户管理备份信息。13.1数据库备份与还原数据库备份与还原13.1.3恢复模式恢复模式 数据库恢复模式是数据库运行时记录事务日志的模式,可以理解为数据库备份和恢复的方案,它不仅决定了恢复的过程,
6、还决定了备份的行为。恢复模式一共有三种:(1)完整恢复模式 完整恢复模式完整地记录了所有的事务,并保留所有事务的完整日志记录,直到将它们备份。(2)大容量日志恢复模式 在大容量日志恢复模式下,而是只对大容量操作操作进行开始和结果等基础信息的记录,不记录实际的操作事务过程。(3)简单恢复模式 简单恢复模式是没有事务日志的备份,在简单恢复模式下,数据库的备份和恢复因为没有日志的参与,简化了其处理的过程。简单恢复模式只能将数据库恢复到备份时刻,而且会丢失数据库备份后的所有操作。13.2备份数据库备份数据库 备备份份就就是是指指对对数数据据库库或或事事务务日日志志进进行行拷拷贝贝。数数据据库库备备份份
7、记记录录了了在在进进行行备备份份这这一一操操作作时时数数据据库库中中所所有有数数据据的的状状态态。在在SQL Server 2005中中,可以使用可以使用SSMS备份和备份和T-SQL 语句备份两种方式。语句备份两种方式。13.2备份数据库备份数据库 13.2.1使用使用SSMS备份数据库备份数据库任务任务13-1创建一个名称为创建一个名称为“SGMSBACKUP”的备份设备,用于容纳的备份设备,用于容纳SGMS数据库数据库的备份。的备份。(1)启动SSMS,连接到SQL Server服务器,在“对象资源管理器”中展开“服务器对象”节点。(2)右击“备份设备”,单击“新建备份设备”命令,打开“
8、备份设备”窗口。(3)在“设备名称”框输入设备名称“SGMSBACKUP”。它将被作为新的逻辑设备标识。(4)如果需要重新确定备份存储位置,就在“文件”选项中输入目标路径及文件名或单击“”按钮选择新的路径。(5)单击“确定”按钮完成备份设备的创建。13.2备份数据库备份数据库 13.2.1使用使用SSMS备份数据库备份数据库任务任务13-2 使用使用SSMS 对完整恢复模式的对完整恢复模式的SGMS数据库进行完整备份数据库进行完整备份(1)启动SSMS,连接到SQL Server服务器,在“对象资源管理器”中展开“数据库”节点。(2)右击“SGMS”数据库,在弹出的快捷菜单中依次选择“任务”|
9、“备份”,弹出“备份数据库”窗口。(3)选择备份类型。在“备份类型”下拉列表中选择需要的备份类型(默认为“完整”)。(4)选择备份目标。(5)单击“确定”按钮,系统将进行数据库的完整备份,完成后会弹出提示窗口。13.2备份数据库备份数据库 13.2.1使用使用SSMS备份数据库备份数据库任务任务13-3 查看查看“SGMSBACKUP”备份设备的信息备份设备的信息(1)启动SSMS,连接到SQL Server服务器。(2)在“对象资源管理器”中依次展开“服务器对象”、“备份设备”。(3)双击“SGMSBACKUP”备份设备,在弹出的“备份设备”窗口中单击“选择页”中的“媒体内容”页,即可看到备
10、份设备的信息。13.2备份数据库备份数据库 13.2.2使用使用T-SQL 语句备份语句备份任务任务13-4 使用使用T-SQL 语句对语句对SGMS数据库进行完整备份数据库进行完整备份实现该任务的T-SQL 语句及返回结果如下图所示 13.2备份数据库备份数据库 13.2.2使用使用T-SQL 语句备份语句备份任务任务13-5 使用使用T-SQL语句对语句对SGMS数据库进行事务日志备份数据库进行事务日志备份 实现该任务的T-SQL 语句及返回结果如下图所示 13.3还原数据库还原数据库 通过备份,管理员可以保存SQL Server 数据库及其对象的特定状态。在系统出现故障时,管理员可以通过
11、还原将数据库还原到以前的正常状态,从而降低用户的损失。SQL Server 2005支持SSMS还原和T-SQL 语句还原两种方式。13.3还原数据库还原数据库 13.3.1使用使用SSMS还原数据库还原数据库 (1)启动SSMS,连接到SQL Server服务器,在“对象资源管理器”中展开“数据库”节点。(2)右击“SGMS”数据库,在弹出的子菜单中依次选择“任务”|“还原”|“数据库”,弹出“还原数据库”窗口。(3)还原的目标:如果要还原当前已经存在的数据库到以前的状态,在“目标数据库”下拉列表框中选择要还原的数据库。(4)还原的源:如果还原的来源数据库已存在于当前服务器,则在“源数据库”
12、中选择GSMS数据库。(5)在“备份集列表”中选择用于还原的备份集。(6)单击“确定”按钮,SQL Server将按照设置情况完成还原。任务任务13-6 使用使用SSMS对完整恢复模式的数据库对完整恢复模式的数据库SGMS进行还原进行还原13.3还原数据库还原数据库 13.3.2使用使用T-SQL 语句还原数据库语句还原数据库任任务务13-7 在在完完整整恢恢复复模模式式下下,使使用用T-SQL语语句句将将SGMS数数据据库库还还原原到到最最近近的的一一个完整备份。个完整备份。实现该任务的T-SQL 语句及返回结果如下图所示 13.4数据导入与导出数据导入与导出 在数据库的管理过程中经常需要将
13、一种数据环境中的数据传输到在数据库的管理过程中经常需要将一种数据环境中的数据传输到另一种数据环境中,这就是数据的导入与导出,利用导入导出工具可另一种数据环境中,这就是数据的导入与导出,利用导入导出工具可以提高数据录入的效率和安全。以提高数据录入的效率和安全。13.4数据导入与导出数据导入与导出 13.4.1数据的导入数据的导入 SQL Server支支持持多多种种导导入入数数据据的的方方式式。我我们们主主要要学学习习两两种种:(1)使使用用T-SQL语句导入;(语句导入;(2)使用数据转换服务()使用数据转换服务(DTS)导入。)导入。任任务务13-9 使使用用T-SQL 语语句句将将SGMS
14、数数据据库库中中的的class表表里里的的数数据据导导入入到到Northwind数据库中,新的表名为数据库中,新的表名为classbak。实现该任务的T-SQL 语句及返回结果如下图所示 13.4数据导入与导出数据导入与导出 13.4.1数据的导入数据的导入 任任务务13-10 使使用用T-SQL 语语句句将将EXCEL文文件件Test.xls中中class工工作作表表里里的的数数据据(追追加)导入到加)导入到SGMS数据库中的数据库中的class表中。表中。【注意】如果需要使用OPENROWSET函数来导入数据,需要启用STATEMENT 的“OpenRowset/OpenDatasourc
15、e”支持。该支持选项在SQL Server 2005的配置工具之一的“外围应用配置器”中设置。实现该任务的T-SQL 语句及返回结果如下图所示 13.4数据导入与导出数据导入与导出 13.4.1数据的导入数据的导入 任务任务13-11 使用数据转换服务向导将使用数据转换服务向导将EXCEL中的数据导入到中的数据导入到SGMS数据库中。数据库中。(1)在“对象资源管理器”中展开“数据库”节点。(2)右击“SGMS”数据库,在弹出的快捷菜单中依次选择“任务”|“导入数据”,弹出“SQL Server导入和导出向导”窗口。(3)单击“下一步”按钮,显示“选择数据源”窗口。(4)在“数据源”下拉列表框
16、中选择“Microsoft Excel”,单击文件路径中的“浏览”按钮,选择要导入的文件。选中“首行包含列名称”选项。(5)单击“下一步”按钮,在“目标”下拉列表框中选择“SQL Native Client”。在“服务器名称”中输入或选择服务器,在“数据库”下接列表中选中确定要导入的数据库。(6)单击“下一步”按钮,显示“指定表复制或查询”窗口。(7)选中“复制一个或多个表或视图的数据”。单击“下一步”按钮。(8)在“表和视图”中选中要导入的表的复选框,单击“预览”按钮,弹出“预览数据”窗口。(9)单击“确定”,“下一步”按钮,显示“保存并执行包”窗口。(10)单击“下一步”按钮,显示“完成该
17、向导”窗口。(11)单击“完成”按钮,显示操作的详细信息。(12)单击“关闭”按钮,完成数据导入任务。13.4数据导入与导出数据导入与导出 13.4.2数据的导出数据的导出 在在实实际际应应用用中中,经经常常需需要要将将当当前前系系统统中中的的数数据据导导出出到到其其他他系系统统中中,或或者者转转换换为为其其他他格格式式的的数数据据供供用用户户使使用用。如如将将教教务务管管理理系系统统数数据据库库SGMS中中学学生生表表的的部部分分数数据据转转换换为为Excel表表格格,供供学学生生管管理理人人员员使使用用。此此时时仍仍可可以以使使用用数数据据转转换换向向导导来来完完成成。导导出出数数据据与与
18、导导入入数数据据的的方方法法类类似似,在在此此不不再再赘赘述述。导导出出数数据据时时,如如果果导导出出到到不不同同类类型型的的目目标标数数据据库库会会有有不不同的选项,可以根据向导提示逐步完成。同的选项,可以根据向导提示逐步完成。13.5作业作业 作业是一系列由作业是一系列由 SQL Server 代理按顺序执行的指定操作。作业代理按顺序执行的指定操作。作业包含一个或多个步骤,每个步骤都有自己的任务。包含一个或多个步骤,每个步骤都有自己的任务。作业可以运行重复任务或那些可计划的任务,它们可以通过生成作业可以运行重复任务或那些可计划的任务,它们可以通过生成警报来自动通知用户作业状态,从而极大地简
19、化警报来自动通知用户作业状态,从而极大地简化SQL Server 管理。管理。作业只能由其所有者或作业只能由其所有者或 sysadmin 角色的成员进行编辑,用户可以手角色的成员进行编辑,用户可以手动运行作业,也可以将作业配置为根据计划或响应警报来运行。动运行作业,也可以将作业配置为根据计划或响应警报来运行。作业依赖作业依赖SQL Server代理服务运行,所以在创建作业之前需要确代理服务运行,所以在创建作业之前需要确认认SQL Server代理服务的状态。如果该服务未启动,可以通过在代理服务的状态。如果该服务未启动,可以通过在SQL Server Configuration Manager或
20、或SQL Server Management Studio或服务管理器中启动它。或服务管理器中启动它。13.5作业作业 13.5.1创建作业创建作业 用用户户可可以以使使用用SSMS 或或者者T-SQL语语句句创创建建作作业业,这这里里我我们们主主要要学学习习使使用用SSMS创创建建方方式式。创创建建作作业业的的过过程程包包括括(1)创创建建新新作作业业;(2)定义作业步骤;(定义作业步骤;(3)创建作业时间计划;)创建作业时间计划;任务分析:在SQL Server中可以使用新建作业向导来创建作业。过程如下:(1)启动SSMS,连接到SQL Server服务器,在“对象资源管理器”中展开“SQ
21、L Server代理”节点。(2)右击“作业”节点,选择“新建作业”命令,弹出“新建作业”窗口。(3)作业名称:在“常规”页的“名称”框中输入作业名称“newjob”。(4)启用状态:如果不希望在创建作业后立即运行作业,就清除“已启用”复选框。(5)说明:在“说明”框中输入对作业功能的说明。(6)单击“确定”按钮,完成作业的创建。任务任务13-12 创建一个名称为创建一个名称为“newjob”的作业。的作业。13.5作业作业 13.5.1创建作业创建作业 任务分析:作业步骤是作业对数据库或服务器执行的操作,每一个作业至少要有一个作业步骤。完成该任务的过程如下:(1)启动SSMS,连接到SQL
22、Server服务器,在“对象资源管理器”中展开“SQL Server代理”节点。(2)展开“作业”节点,右击“newjob”作业,弹出“作业属性”窗口。(3)在“作业属性”窗口中,单击“步骤”选项页,再单击“新建”按钮,弹出“新建作业步骤”窗口。(4)在“步骤名称”框中,键入作业的步骤名称“step01”(5)在“类型”列表中,选择“Transact-SQL 脚本(T-SQL)”。(6)在“数据库”列表中,选择SGMS数据库(7)在命令框中输入需要的SQL命令。(8)单击“高级”选项页,可以设置高级特性。(9)单击“确定”按钮,关闭“作业步骤属性”窗口 任务任务13-13 在作业在作业“new
23、job”中创建一个名称为中创建一个名称为“step01”步骤,功能步骤,功能是对数据库分别进行完整备份和事务日志备份。是对数据库分别进行完整备份和事务日志备份。13.5作业作业 13.5.1创建作业创建作业(1)启动SSMS,连接到SQL Server服务器,在“对象资源管理器”中展开“SQL Server代理”节点。(2)展开“作业”节点,右击“newjob”作业,再单击“属性”,弹出“作业属性”窗口。(3)选择“计划”选项页,单击“新建”命令,弹出“新建作业计划”窗口。(4)在“名称”框中输入新计划的名称“timejob”。(5)如果不希望计划在创建后立即生效,则清除“已启用”复选框。(6
24、)设置好“计划类型”、“频率”、“持续时间”等,如下图所示。(7)单击“确定”按钮,关闭“新建作业计划”窗口。任务任务13-14 给作业给作业“newjob”创建时间计划,名称为创建时间计划,名称为“timejob”,使,使作业在每天的作业在每天的23:50:00运行一次。运行一次。13.5作业作业 13.5.1创建作业创建作业“作业计划属性”窗口13.5作业作业 13.5.2管理作业管理作业 作作业业的的管管理理包包括括作作业业的的开开始始与与停停止止、监监视视作作业业活活动动情情况况、查查看看作作业业历史日志等。历史日志等。(1)启动SSMS,连接到SQL Server服务器,在“对象资源
25、管理器”中展开“SQL Server代理”节点。(2)展开“作业”节点,右击“newjob”作业,选择“开始作业”命令,弹出“开始作业”窗口,如下图所示。任务任务13-15 开始运行作业开始运行作业“newjob”“开始作业”窗口13.5作业作业 13.5.2管理作业管理作业 作业在创建以后,有时需要查看其运行情况,此时可以通过作业活作业在创建以后,有时需要查看其运行情况,此时可以通过作业活动监视器来查看。查看的具体操作步骤如下:动监视器来查看。查看的具体操作步骤如下:(1)启动SSMS,连接到SQL Server服务器,在“对象资源管理器”中展开“SQL Server代理”节点。(2)右击“
26、作业活动监视器”,选择“查看作业活动”命令,弹出“作业活动监视器”窗口。13.5作业作业 13.5.2管理作业管理作业 任务任务13-16 查看作业查看作业newjob的日志记录。的日志记录。(1)启动SSMS,连接到SQL Server服务器,在“对象资源管理器”中展开“SQL Server代理”节点。(2)展开“作业”节点,右击作业“newjob”,在弹出的快捷菜单中选择“查看历史记录”命令,弹出“日志文件查看器”窗口。13.6警报警报 “警报警报”是对事件的自动响应,用户可以针对一个或多个事件定义是对事件的自动响应,用户可以针对一个或多个事件定义警报,指定希望警报,指定希望 SQL Se
27、rver 代理如何响应发生的这些事件。警报可代理如何响应发生的这些事件。警报可以通过通知管理员或运行某项作业来响应事件。通过定义警报,管理以通过通知管理员或运行某项作业来响应事件。通过定义警报,管理员可以更有效地监视和管理员可以更有效地监视和管理 SQL Server。13.6警报警报13.6.1创建警报创建警报 任任务务13-17 创创建建一一个个名名为为“newalter”的的警警报报,当当SGMS的的数数据据库库日日志使用率大于志使用率大于90%时自动响应警报,并执行作业时自动响应警报,并执行作业“newjob”。(1)启动SSMS,连接到SQL Server服务器,在“对象资源管理器”
28、中展开“SQL Server代理”节点。(2)右击“警报”,选择“新建警报”命令,弹出“新建警报”窗口,如下图所示。“新建警报”窗口13.6警报警报13.6.1创建警报创建警报(3)在“名称”框中输入警报名称“newalter”。(4)在“类型”下拉列表中选择“SQL Server 性能条件警报”。(5)在“对象”下拉列表中选择“SQLServer:Databases”。(6)在“计数器”下拉列表中选择“Percent Log Used”。(7)在“实例”下拉列表中选择“SGMS”。(8)在“计数器满足以下条件时触发警报”下拉列表中选择“高于”。(9)在“值”框中输入“90”。(10)在“响应
29、”页中,选择“执行作业”,将要执行的作业设置为“newjob”。(11)在“选项”页中将两次响应之间的延迟时间值设置为1分钟。(12)单击“确定”按钮,关闭“新建警报”窗口。13.6警报警报13.6.2查看警报历史记录查看警报历史记录 任务任务13-18 查看查看“newalter”警报的历史记录。警报的历史记录。任务分析:警报的“历史记录”记录了警报响应的时间,发生的次数等。完成该任务的步骤如下:(1)启动SSMS,连接到SQL Server服务器,在“对象资源管理器”中展开“SQL Server代理”节点。(2)展开“警报”节点,双击“newalter”警报,弹出警报属性窗口。(3)单击“历史记录”页,可以看到警报的历史记录。