第11章 数据备份、恢复和报表 本章概述: 本章主要讲解如何规划数据库的日常备份策略,以及当数据库发生故障时应当采取怎样的手段进行数据恢复。本章首先讲解了如何制订备份策略,然后说明了如何进行备份和还原。同时,本章还介绍了数据库快照以及系统数据库恢复的问题。学生需要掌握多种备份策略,包括完整备份、差异备份、日志备份以及快照备份,同时需要了解应该在何种场合下使用相应的策略。

Slides:



Advertisements
Similar presentations
数据库原理与应用教程 ―SQL Server
Advertisements

4 数据库管理.
第10章 数据库备份与恢复 第10章 数据库备份与恢复 10.1 数据库备份 10.2 恢复数据库 10.3 数据库的维护 上页 下页 结束.
第16章 备份与恢复 基 本 概 念 16.1 备份数据库 16.2 恢复数据库 16.3.
项目4 保障数据库安全 第13章 数据库的安全性 第14章 备份、恢复、分离附加与 导入导出数据库
8.1 备份和恢复概述 备份和恢复需求分析.
第六 章数据库访问页 6.1 数据访问页视图 6.2 创建数据访问页 6.3 编辑数据访问页 6.4 查看数据访问页 退出.
第四章 数据库管理和使用.
6 Copyright © Oracle Corporation, All rights reserved. 维护控制文件.
插入超链接 高邮市第一实验小学 范太国 任务一:设置文本超链接 任务一:设置文字超链接 步骤:1、选定文字并右击,在快捷菜单 中选择“超链接”命令。 2、在弹出的对话框中选择左侧“链接到:”中的“本文档中的位置(A)”项,在“请选择文档中的位置(C):”中选择需要链接的幻灯片,单击“确定”按钮。
Oracle数据库 Oracle 子程序.
在PHP和MYSQL中实现完美的中文显示
第二讲 搭建Java Web开发环境 主讲人:孙娜
Chinese Virtual Observatory
第八章 菜单设计 §8.1 Visual FoxPro 系统菜单 §8.2 为自己的程序添加菜单 §8.3 创建快捷菜单.
第4章 数据库管理 4.1 数据库的存储结构 4.2 创建、修改和删除数据库 4.3 数据库备份 4.4 恢复数据库 4.5 数据库的维护
大学计算机基础 典型案例之一 构建FPT服务器.
SVN服务器的搭建(Windows) 柳峰
SQL Injection.
第11章:一些著名开源软件介绍 第12章:服务安装和配置 本章教学目标: 了解当前一些应用最广泛的开源软件项目 搭建一个网站服务器
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
Windows网络操作系统管理 ——Windows Server 2008 R2.
Windows网络操作系统管理 ——Windows Server 2008 R2.
第十章 IDL访问数据库 10.1 数据库与数据库访问 1、数据库 数据库中数据的组织由低到高分为四级:字段、记录、表、数据库四种。
以ISI平台为例,为您演示一下如何在Endnote文献中查看该文献的References
第17章 网站发布.
2019/1/12 GDP设计协同 超级管理员操作手册 GDP项目组.
ENS 10.1安装配置指南 王俊涛 | SE.
Windows 7 的系统设置.
SQL Server 2000数据库 简明教程 李存斌 主编 下一页.
数据库技术.
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
第10章 备份和恢复 本章导读: 在数据库的使用过程中,难免会由于软硬件故障、病毒入侵、操作不当等各种因素造成数据的丢失或损坏。备份和恢复是保证数据库有效性、正确性和可靠性的重要措施。运用适当的备份策略,可以保证及时有效地恢复数据库中的重要数据,将数据损失量降低到最小点。 知识要点: 备份 恢复.
本次课主题:备份和恢复.
程序设计工具实习 Software Program Tool
第13章 数据库的备份与恢复 13.1 数据库备份设备 13.2 数据库备份 13.3 数据库恢复.
C语言程序设计 主讲教师:陆幼利.
Web安全基础教程
实验讲评
国家“十一五”规划教材 数据库原理与应用教程(第3版).
第3章 创建和维护数据库 3.1 数据库的结构 3.2 创建数据库的方法 3.3 数据库维护 3.4 数据库迁移.
数据库应用技术 SQL Server 2005.
第四章 团队音乐会序幕: 团队协作平台的快速创建
商业分析平台-语义元数据 用友集团技术中心 边传猛 2013年 11月 06日.
VB与Access数据库的连接.
姚金宇 MIT SCHEME 使用说明 姚金宇
实验七 安全FTP服务器实验 2019/4/28.
工业机器人知识要点解析 (ABB机器人) 主讲人:王老师
Lab17 程序设计B班
数据库系统与应用实验 基于SQL Server 2005.
JSP实用教程 清华大学出版社 第2章 JSP运行环境和开发环境 教学目标 教学重点 教学过程 2019年5月7日.
iSIGHT 基本培训 使用 Excel的栅栏问题
第六章 素材的加工与处理 第13讲 用GoldWave进行音频的截取、合并、淡入淡出操作
Visual Basic程序设计 第13章 访问数据库
Touch Github = Touch the World
第11章 安全管理 教学提示:数据库安全是关系数据库中的非常重要的方面,包括了系统安全、数据安全、资源管理、用户管理、权限管理、角色管理、口令管理以及授权、认证、审计等相当多方面的内容。本章讲述有关数据库安全方面的知识。 数据库系统的安全性是每个数据库管理员都必须认真考虑的问题。SQL Server.
第9章 视 图 教学提示:用户在查询数据库中的数据时,除了直接查看数据库中的表中的数据以外,还可以通过视图来查看表中的数据,也就是说,视图为用户提供了另外一种查看表中的数据的方式。 视图是一种虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自于定义视图的查询所引用的表,并且在引用视图时动态生成。
VRP教程 2011.
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
Python 环境搭建 基于Anaconda和VSCode.
第11章 SQL Server 2005 集成服务.
Polarization of electro- magnetic wave after reflection
第六章 Excel的应用 五、EXCEL的数据库功能 1、Excel的数据库及其结构 2、Excel下的数据排序 (1)Excel的字段名行
YOUR SUBTITLE GOES HERE
VB与Access数据库的连接.
第8章 创建与使用图块 将一个或多个单一的实体对象整合为一个对象,这个对象就是图块。图块中的各实体可以具有各自的图层、线性、颜色等特征。在应用时,图块作为一个独立的、完整的对象进行操作,可以根据需要按一定比例和角度将图块插入到需要的位置。 2019/6/30.
WEB程序设计技术 数据库操作.
使用ADO访问数据库 李宝智 BonizLee 课程 10564A
创建、启动和关闭Activity 本讲大纲: 1、创建Activity 2、配置Activity 3、启动和关闭Activity
培训课件 AB 变频器的接线、操作及参数的备份 设备动力科.
Presentation transcript:

第11章 数据备份、恢复和报表 本章概述: 本章主要讲解如何规划数据库的日常备份策略,以及当数据库发生故障时应当采取怎样的手段进行数据恢复。本章首先讲解了如何制订备份策略,然后说明了如何进行备份和还原。同时,本章还介绍了数据库快照以及系统数据库恢复的问题。学生需要掌握多种备份策略,包括完整备份、差异备份、日志备份以及快照备份,同时需要了解应该在何种场合下使用相应的策略。 教学目标: 了解规划备份策略。 掌握备份用户数据库。 掌握还原用户数据库。 掌握从数据库快照恢复数据。 了解系统数据库和灾难恢复。 教学重点: 掌握备份数据库的方法。 掌握还原数据库的方法。 掌握数据库快照的使用方法。 教学难点: 学生对于灾难恢复的场景以及进行备份规划的场景缺乏了解,无法认识到备份是一件日常工作。 教学资源: 11.1 规划备份策略 11.2 备份用户数据库 11.3 还原用户数据库 11.4 从数据库快照恢复数据 11.5 系统数据库和灾难恢复 建议学时数 3课时课堂教学+2课时实验教学

本章的学习目标: 掌握数据库的导入、导出方法 理解数据库的备份策略 掌握如何创建备份 理解数据库的还原策略 掌握还原数据库的方法 掌握分离和附加数据库

11.1 数据库的导入导出 通过导入导出操作可以在SQL Server 2008和其他异类数据源(例如Excel或Oracle数据库)之间轻松地移动数据。例如,可以将数据从Excel应用程序导出到数据文件,然后将该数据文件导入到SQL Server表中。导出是指将数据从SQL Server表复制到数据文件中;导入是指将数据从数据文件加载到SQL Server表中。

11.1.1 数据库的导出 在SQL Server 2008中,可以将数据表中的数据在SQL Server Management Studio中导出。具体操作步骤如下: (1) 打开SQL Server Management Studio,右击“对象资源管理器”中的“实例数据库”对象,从弹出的快捷菜单中选择“任务”|“导出数据”命令,如图11-1所示。 (2) 在打开的“SQL Server导入和导出向导”对话框中,选择需要导出的数据源。

(3) 接下来选择导出数据的目标,即导出数据复制到何处。如果选择“SQL Native Client”选项,则将本机的SQL Server数据库数据导出到其他计算机的SQL Server服务器中; (4) 在这一步选择是从表中复制数据还是从查询中复制数据。本例中,选中“复制一个或多个表或视图的数据”单选按钮,

(5) 在“配置平面文件目标”对话框中,选择导出数据的源表或视图。在本例中,在“源表或源视图”下拉列表中选择“学生表”选项,如图11-5所示,然后单击“下一步”按钮。

(6) 这一步是保存并执行包,选中“立即执行”复选框,如图11-6所示,然后单击“下一步”按钮。

(7) 完成导出数据的向导设置后,单击“完成”按钮,如图11-7所示。

(8) 导出数据操作完成后,打开执行成功的界面,提示用户已经成功导出了6行数据,如图11-8所示。

11.1.2 数据库的导入 在SQL Server 2008中,也可以在SQL Server Management Studio中将数据导入到数据库表中。 为了演示数据的导入操作,本例将上一节导出操作所导出的数据导入到“实例数据库”中,具体操作步骤如下:

(1) 打开SQL Server Management Studio,右击“对象资源管理器”中的“实例数据库”对象,从弹出的快捷菜单中选择“任务”|“导入数据”命令,如图11-10所示。

(3) 此时可以看到将要导入的数据记录,如图11-12所示,然后单击“下一步”按钮。 (4) 在“选择目标”对话框中,指定导入数据的数据库为“实例数据库”,如图11-13所示,然后单击“下一步”按钮。 (5) 接下来,设置要复制的表到目标数据库的映射,单击“映射”列下的“编辑”按钮,如图11-14所示。 (6) 在弹出的“列设置”对话框中,设置目标数据库中表的各列属性,可以修改各个列的名称和数据类型以符合需要,如图11-15所示,然后单击“确定”按钮。

(7) 返回“SQL Server导入和导出向导”对话框,选中“立即执行”复选框,如图11-16所示,然后单击“下一步”按钮。 (8) 完成导入数据的向导设置后,单击“完成”按钮,如图11-17所示。 (9) 导入数据操作完成后,自动打开执行成功的界面,提示用户已成功导入了6行数据,如图11-18所示。打开“实例数据库”查看导入的数据表,可以看到该表中已导入的学生信息,如图11-19所示。

11.2 数据库的备份与还原 尽管在SQL Server 2008中采取了许多措施来保证数据库的安全性和完整性,但故障仍不可避免。同时还存在其他一些可能造成数据丢失的因素,例如,用户的操作失误、蓄意破坏、病毒攻击和自然界不可抗力等。因此,SQL Server 2008制定了一个良好的备份还原策略,定期将数据库进行备份以保护数据库,以便在事故发生后能够还原数据库。

11.2.1 数据库的备份 Microsoft SQL Server 2008提供了4种不同的备份方式:完整备份和完整差异备份、部分备份和部分差异备份、事务日志备份、数据库文件和文件组备份。 (1) 完整备份和完整差异备份 (2) 部分备份和部分差异备份 (3) 事务日志备份 (4) 数据库文件和文件组备份

SQL Server 备份类型 描述 备份类型 完整备份 完整备份包含所有数据文件和部分事务日志 事务日志备份 所有数据库更改 尾日志备份 包含上一次未备份的日志部分(称为日志的“活动部分”)的事务日志备份 差异备份 备份上一次完整数据库备份之后被更改的数据库部分 文件或文件组备份 制定的文件或文件组 部分备份 包含主文件组、每个读写文件组以及所有指定的读写文件中的全部数据 仅复制备份 数据库或日志 (不影响整体备份)

2. 创建备份设备 磁带备份设备的用法与磁盘设备相同,但必须注意以下两点: (1) 磁带设备必须物理连接到运行SQL Server的计算机上。不支持备份到远程磁带设备上。 (2) 如果磁带备份设备在备份操作过程中已满,但还需要写入一些数据,SQL Server将提示更换新磁带并继续备份操作。 备份设备:在备份操作过程中,将要备份的数据(即“备份数据”)写入物理备份设备。“物理备份设备”是指磁带机或操作系统提供的磁盘文件。可以将备份数据写入 1 到 64 个备份设备。如果备份数据需要多个备份设备,则所有设备必须对应于一种设备类型(磁盘或磁带)。

3. 备份的执行 SQL Server系统提供了两种数据库备份操作的方法:SQL Server管理平台和Transact-SQL语句。 使用备份向导

例【11-1】:将“实例数据库”备份到备份设备“实例数据库.bak”中,使用WITH FORMAT子句初始化备份设备。 T-SQL语句如下: BACKUP DATABASE 实例数据库 TO DISK='C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup \实例数据库.bak' WITH FORMAT

11.2.2 数据库的还原 1. 还原概述 数据库备份后,一旦系统发生崩溃或者执行了错误的数据库操作,就可以从备份文件中还原数据库。数据库还原是指将数据库备份加载到系统中的过程。系统在还原数据库的过程中,自动执行安全性检查、重建数据库结构以及完成填写数据库内容。安全性检查是还原数据库必不可少的操作。这种检查可以防止偶然使用了错误的数据库备份文件或者不兼容的数据库备份覆盖已经存在的数据库。SQL Server还原数据库时,根据数据库备份文件自动创建数据库结构,并且还原数据库中的数据。

2. 还原数据库 由于数据库的还原操作是静态的,所以在还原数据库时,必须限制用户对该数据库进行其他操作,因此在还原数据库之前,首先要设置数据库访问属性。在SQL Server管理平台中,在需要还原的数据库上单击鼠标右键,从弹出的快捷菜单中选择“属性”命令,打开“数据库属性”对话框,在此对话框中选择“选项”选项页。

使用SQL Server管理平台还原数据库

使用Transact-SQL语句还原数据库 Transact-SQL提供了restore语句来还原数据库,其语法格式如下: restore database [from <backup_device[ ],…n>] [with [[,]file=file_number] [[,]move 'logical_file_name' to 'operating_system_file_name'] [[,]replace] [[,]{norecovery|recovery|standby=undo_file_name}] ] <backup_device>::={{backup_device_name|@backup_device_name_evar} |{disk|tape|pipe} ={temp_backup_device|@temp_backup_device_var}

11.3 自动化管理任务 作为SQL Server 2008的数据库管理员,有许多日常工作是相同或相似的,而且需要每天(或每隔一段时间)重复操作。这就使这份工作变得有些枯燥乏味。为了使管理更加方便,SQL Server 2008提供了自动化管理任务的机制,很多具有重复性的工作可以交给SQL Server 2008来自动完成。

11.3.1 多服务器管理 (1) 在下列情况下使用多服务器管理: 管理两个或更多的服务器 为数据仓库在企业服务器之间调度信息数据流

(2) 创建多服务器环境时,需要考虑如下事项: 每个目标服务器只向一个主服务器报告。在将目标服务器登记到另一个主服务器上之前,必须使它与现有的主服务器脱离。 主服务器和目标服务器必须在Windows NT 4.0或Window 2000操作系统中运行。 更改目标服务器的名称时,必须先与主服务器脱离,而且更改后要重新登记。 若要取消多服务器配置,必须使所有目标服务器脱离主服务器。

11.3.2 SQL Server 2008代理服务配置 SQL Server代理允许自动处理不同的管理任务,但是在这样做之前必须保证启动了SQL Server代理。在SQL Server管理平台中,展开指定的服务器,用鼠标右键单击SQL Server代理图标,从弹出的快捷菜单中选择“启动”命令,即可启动SQL Server代理。启动以后可以利用SQL Server管理平台对其进行配置。

11.4 分离和附加数据库 在进行分离和附加数据库操作时,首先要注意以下几点: 11.4 分离和附加数据库 在进行分离和附加数据库操作时,首先要注意以下几点: (1) 不能进行更新,不能运行任务,用户也不能连接在数据库上。 (2) 在移动数据库之前,为数据库做一个完整的备份。 (3) 确保数据库要移动的目标位置及将来数据增长有足够的空间。 (4) 分离数据库并没有将其从磁盘上真正的删除。如果需要,可以对数据库的组成文件进行移动、复制或删除。

11.4.1 分离和附加数据库的操作 1. 分离数据库的操作 2. 附加数据库的操作

11.4.2 使用T-SQL进行分离和附加数据库操作 1. 分离数据库 分离数据库需要db_owner来完成,具体的语法格式如下: Sp_detach_db [@dbname= ] 'dbname' [ , [ @skipchecks= ] 'skipchecks' ] [ , [ @KeepFulltextIndexFile= ] ‘KeepFulltextIndexFile’] dbname:要分离的数据库名称。如果没有该选项,则没有数据库能被分离。 skipchecks:设置为NULL,则会更新统计信息。设置为true,则会跳过对统计信息的更新。 KeepFulltextIndexFile:设置为true,则保留该数据库中所生成的所有全文索引文件。

2. 附加数据库 附加数据库的语法格式如下: CREATE DATADASE database_name ON <filespec> [ , …n ] FOR { ATTACH [ WITH < service_broker_option> ] | ATTACH_REBUILD_LOG }

(1) 关闭数据库的活动连接,打开查询编辑器窗口,输入sp_detach_db代码,完成输入后,运行该代码。将会在执行窗口中出现“命令已成功完成”的信息,如图11-46所示。此时数据库已被成功的分离了。 代码如下: USE master GO sp_detach_db ' 实例数据库 '

(2) 附加数据库,在同一个查询编辑器窗口中输入如下代码,如图11-47所示。用FILENAME参数替换数据库所在的位置,并确保该路径被写入一行中。 代码如下: CREATE DATABASE 实例数据库 ON (FILENAME='D:\Program Files\Microsoft SQL Server\ MSSQL.1\MSSQL\Data\实例数据库.mdf') FOR ATTACH

11.5 报表服务 作为数据库应用程序的重要组成部分,Reporting Services提供了如下功能: 11.5 报表服务 作为数据库应用程序的重要组成部分,Reporting Services提供了如下功能: 一个高性能引擎用来处理和格式化报表; 一个完整的工具集用来创建、管理和查看报表; 一个可扩展架构和开放式接口可将报表嵌入或集成报表解决方案到不同的IT环境中。

备份系统数据的注意事项 备份系统数据库: 修改 master 数据库之后 修改 msdb 数据库之后 修改 model 数据库之后 利用 CREATE DATABASE、 ALTER DATABASE或 DROP DATABASE 语句 执行特定存储过程 修改 msdb 数据库之后 修改 model 数据库之后

还原系统数据库的注意事项 从备份中还原 master、model 和 msdb 数据库 SQL Server Management Studio 创建对象的脚本 依附未损坏的数据库重建而不是还原

还原 master 数据库的方法 如果仍可访问 master 数据库 如果 master 数据库损坏严重 以单用户模式启动 SQL Server 从最新备份中还原 master 数据库 重启服务器 如果 master 数据库损坏严重 用 Setup.exe重新构建 master 数据库 还原 master 数据库 还原 msdb 和 model 数据库 1 2 3 1 2 3

实验 高级AdventureWorks数据库管理员要求你实现AdventureWorks数据库的灾难恢复策略。 需要可重用的备份设备 必须备份日志文件 日常完整备份必须由若干差异备份组成