广东海洋大学大型数据库课件第16章剖析

上传人:今*** 文档编号:107699796 上传时间:2019-10-20 格式:PPT 页数:27 大小:1.13MB
返回 下载 相关 举报
广东海洋大学大型数据库课件第16章剖析_第1页
第1页 / 共27页
广东海洋大学大型数据库课件第16章剖析_第2页
第2页 / 共27页
广东海洋大学大型数据库课件第16章剖析_第3页
第3页 / 共27页
广东海洋大学大型数据库课件第16章剖析_第4页
第4页 / 共27页
广东海洋大学大型数据库课件第16章剖析_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《广东海洋大学大型数据库课件第16章剖析》由会员分享,可在线阅读,更多相关《广东海洋大学大型数据库课件第16章剖析(27页珍藏版)》请在金锄头文库上搜索。

1、1,本章学习目标:,了解备份 数据库的归档与非归档工作模式 数据库的物理备份与介质恢复 数据库的逻辑备份恢复(EXP/IMP工具) 使用RMAN对数据库进行备份与恢复,第16章 备份与恢复,16.1 数据库备份概述,数据库的备份与恢复是保证数据库安全运行的一项重要内容,也是数据库管理员的一项重要职责。在实际的应用中,数据库可能会遇到一些意外的破坏,导致数据库无法正常运行。数据库的一个备份包括了数据库所有重要的组成部分,包括控制文件、数据文件、日志文件。当数据库因意外事故而无法正常运行时,就可以用该备份对数据进行恢复,将意外损失降低到最小。,3,数据库备份方法,备份可分为二种: 物理备份:对数据

2、库的物理文件进行介质复制,物理备份对应介质恢复。 从是否脱机方面分: 冷备份:脱机备份 热备份:联机备份 从是否归档方面分: 归档模式: 数据库工作于归档模式下 非归档模式:数据库工作于非归档模式下 逻辑备份:利用ORACLE的导出导入工具(EXPORT,IMPORT)进行备份 ,主要用于数据的迁移。,Oracle数据可以运行在两种不同的方式下:归档模式(ARCHIVELOG)和非归档模式(NOARCHIVELOG)。 非归档模式:重做日志组不归档(即不拷贝进入永久磁盘),并且循环使用。数据库恢复时,只能利用现存在日志文件中的信息对数据库进行恢复。 归档模式:每当日志文件写满,回到第一组文件前

3、,全部日志文件已被拷贝进入永久磁盘,永久保留了完整的信息。 归档模式的查看: 数据字典V$DATABASE显示当前的模式(图16-1) 以 DBA身份登录使用ARCHIVE LOG LIST命令查看归档模式。 在归档模式下,ORACLE 10G在名为flaxh_recovery_area(闪回区,在produceproduct10.1.0下)的文件夹中存放了每天的备份日志记录-归档日志。如果用户登录后执行了备份操作,则自动创建当日的归档日志,将所有的数据及变化进行归档。,16.2 数据库物理备份及二种模式,归档模式的转换,以管理员身份连接: CONN SYS/口令 AS SYSDBA 关闭数据

4、库及例程: SHUTDOWN IMMEDIATE 数据库进入MOUNT状态: STARTUP MOUNT 改变模式: ALTER DATABASE ARCHIVELOG 打开数据库 ALTER DATABASE OPEN 在管理员模式下,再次运行ARCHIVE LOG LIST或V$DATABASE查看归档模式,已成功修改。,在归档模式下强制归档,ALTER SYSTEM ARCHIVE LOG CURRENT; 归档当前日志组(如2号日志) ALTER SYSTEM ARCHIVE LOG ALL; 归档所有日志 ALTER SYSTEM SWITCH LOGFILE 检查点归档 以上的归档

5、操作,都会在flaxh_recovery_area文件夹下建立一个归档日志文件,当数据库需要恢复时,会使用归档日志及联机日志(重做日志), 使数据库恢复到最近的状态.,7,16.3 备份数据库,本节介绍物理备份及逻辑备份与恢复,物理恢复下节讨论。 逻辑备份与恢复主要目的是数据迁移,物理备份与恢复目的是解决数据库故障. 一.物理备份(手动介质备份) 备份内容包括数据文件,日志文件,控制文件。 备份方式可选:完全脱机备份(冷备份);部分联机备份;联机备份(热备份)。,完全脱机备份:必须将所有的文件备份,不能遗漏 先通过以下数据字典确定三种文件的位置: select file_name from d

6、ba_data_files;(所有数据文件位置) select member from v$logfile;(日志文件组的所有文件位置) select name from v$controlfile;(所有控制文件位置) 再用SHUTDOWN IMMEDIATE 关闭数据库及实例 最后将三种文件人工复制到目标盘 完全脱机备份的缺点是需要关机。 部分脱机备份:将要备份的表空间OFFLINE,再将文件手工拷贝到目标盘,但不能对SYSTEM进行OFFLINE ALTER TABLESPACE 表空间名 OFFLINE;,联机备份(热备份):只有在归档模式下,才可热备份。 将要备份表空间设置为备份状态

7、; SQLALTER TABLESPACE USERS BEGIN BACKUP; 使用操作系统指令COPY或手工将数据文件(即表空间)备份到目标盘; COPY 源文件 目标文件 结束表空间备份; SQLALTER TABLESPACE USERS END BACKUP; 归档重做日志文件: SQLALTER SYSTEM ARCHIVE LOG CURRENT 控制文件需要单独备份,联机备份控制文件: ALTER DATABASE BACKUP CONTROLFILE TO filename 图16-4 -图16-7,二.逻辑备份与恢复: 数据库的逻辑备份对应数据的导入导出工具EXPORT,

8、IMPORT。EXP与IMP是在命令行窗口输入 EXPORT导出: 3种导出方式:全数据库方式;用户方式;表方式。DBA角色可以用各种方式;普通用户只能用表方式与用户方式。 在命令提示符窗口运行EXP命令。可使用EXP HELP=Y得到帮助信息。 表方式导出:将指定模式下的某个表导出到file指定的位置(文件默认为.DMP)(P391) 用户方式导出:将指定模式的所有模式对象导出到file指定的位置:P392 全数据库方式:将数据库所有模式对象导出到file指定的位置,需要以DBA用户导出:P392,IMPORT导入: 导入方式必须与导出方式一致。 3种导入方式:P394 表方式:userid

9、为执行导入操作的模式名。 用户方式:执行导入操作用户名、源用户名、目标用户名均可不同 如:imp userid=sys/sys ignore=y fromuser=school touser=user1 file=e:SCHOOL.DMP 全库方式:执行导入的用户必须为管理员账户,3、表空间传输:除了上述3种导入导出方式外,还可以进行表空间的传输. 在SQL*PLUS中将表空间设置为只读; 在命令行方式C: 使用EXP命令将表空间从一个数据库导出(file为目标文件); 然后将表空间所有对应数据文件及导出文件复制到另一个数据库中; 使用IMP命令表空间导入到另一个数据库中。 P394-395

10、表空间设置为读写.,16.4 数据库恢复,数据库出现故障时,需要管理员按照规程进行有步骤的数据库恢复工作. 数据库恢复就是根据数据库的一个全库备份及归档日志、联机日志文件中的记录,将数据库按步骤用手工方式复原到最近的一个状态。 数据库恢复对应数据库的物理备份。 对数据库的恢复分为实例恢复和介质恢复二种方式。,一.实例恢复,正常工作或关闭实例时,数据库会定时将二个检查点之间的数据写入数据文件中。当 实例故障发生时,由于不能对实例进行关闭,数据库来不及执行一个检查点,保存脏数据块到数据文件中。 由于需要实例恢复的故障的各类文件没有实质性的损坏,实例恢复只需要利用联机日志文件进行实例的恢复,而不需要

11、归档日志文件。 实例恢复的特点是无需用户的参与。DBMS会在下次启动数据库时,自动利用联机日志文件对数据库进行恢复。,二.介质恢复(完全恢复与不完全恢复),介质恢复是对被损坏的数据文件和控制文件进行恢复,分2种: 一、完全恢复:将数据库,表空间,数据文件更新到最近的时间。 1、 运行在NOARCHIVELOG模式:必须恢复所有的数据库文件(所有表空间及控制文件),即使只有一个文件被损坏。所以前提是必须要有表空间数据文件及控制文件的所有备份,需要恢复时再复制到数据库文件夹中。例:P397: 1)在表空间users下创建一个表并插入记录; 2)将所有的文件手工备份到安全的磁盘中; 3)关闭数据库并

12、删除users表空间对应的数据文件,模拟介质损坏(数据库中逻辑上有users表空间,但物理上损坏); 4)启动数据库,将出现图16-16错误; 5)需要将备份的文件复制到数据库文件夹中: oracleproduct10.1.0oradataorcl 启动时仍然会出现错误,图16-17 6)将所有的数据文件的备份全部复制一遍,则不会出现错误。 总结:在NOARCHIVELOG模式下,当数据库出现故障时,应使用一个完整的数据库备份对数据库进行恢复,但备份后添加的数据将会丢失。(图16-18),2、运行在ARCHIVELOG模式: 在归档模式下,在联机重做日志文件与归档日志文件共同作用下,可以将上次

13、备份以来所有的更改信息全部进行恢复。 归档模式下,数据不会丢失,数据库备份后创建的表在恢复后可以看到。,书中398页例子(工作于ARCHIVELOG模式): 对表空间system联机备份(对应的物理文件要已知); Alter tablespace system begin backup; 手工或使用copy命令将物理文件复制到另一个地方; Alter tablespace system end backup; 备份后在system表空间中新创建一个表test; 模拟故障:关闭数据库并删除system对应的物理文件; 若用startup 打开数据库,则由于物理文件找不到,无法打开; 进入moun

14、t状态:startup mount; 切换system表空间的数据文件离线 Alter database datafile 路径 offline; 将备份的数据文件复制到原路径; 使用recover 命令进行自动介质恢复(自动应用联机日志及归档日志) 切换数据文件连线; 打开数据库:alter database open; 查询表test, 发现数据没有丢失.,二.不完全恢复 1、不完全恢复的类型: 当系统表空间文件或日志文件被破坏,并且没有备份的情况下,已经不能进行完全恢复,这时可以进行不完全恢复。 将数据库进行不完全恢复,数据库必须工作于存档模式下。有3种类型: 基于时间的恢复:恢复到某一

15、时间。 基于撤消的恢复:将数据库恢复到最近的,未破坏的日志文件记录的状态。 基于更改的恢复:将数据库恢复到一个系统修改序列号。,2、不完全恢复的策略 当确定要执行不完全恢复后: 立即关闭数据库 将目前的所有数据文件进行备份(防止恢复不成功) 将错误发生前最后一次的数据备份文件代替发生错误的数据文件(备份时间要确定) 进入到MOUNT状态进行上述三种不完全恢复 3、不完全恢复例子(基于时间的恢复): 关闭数据库 从备份还原所有的DBF数据文件(尽量最新) 装载数据库(STARTUP MOUNT); 恢复数据库: RECOVER DATABASE UNTIL TIME yyyy-mm-dd:h:m

16、:s; 打开数据库,并将数据文件,控制文件,重做日志文件同步: ALTER DATABASE OPEN RESETLOGS;,16.5 恢复管理器(RMAN),RMAN可以备份数据库,表空间,数据文件,控制文件,归档日志文件;可用脚本运行频繁执行的备份和恢复操作;还可以对数据库实行增量备份(只备份上次备份后更改的部分) ,还可以与操作系统的日程集成在一起,简化了DBA的工作。 使用RMAN对数据库进行备份和恢复时,只需要在操作系统的命令提示窗口中输入RMAN,即启用RMAN 。,设置RMAN 设置数据库为归档模式; 管理员创建备份表空间(即恢复目录表空间) CREATE TABLESPACE RECOVERY_TBS 创建备份用户rman_admin/rman_admin,默认为备份表空间,授予该用户一定的权限,特别recovery_catalog_ower; CREATE USER rman_admin IDENTIFIED BY rman_admin DEFAULT TABLESPACE RECOVERY_TBS; GRENT C

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号