文档详情

Oracle备份与恢复实战秘籍.pdf

发布:2025-04-13约10.44万字共98页下载文档
文本预览下载声明

Oracle备份与恢复实战秘籍

第一部分:手工备份与恢复

第一章:备份恢复概述

一)数据库故障类型:

1)userprocessfailure:pmon自动处理

2)instancefailure:smon自动处理

3)usererrors:需要dba通过备份恢复或闪回技术解决

4)mediafailure:只能通过备份和日志恢复

二)备份和恢复计划

1)根据生产环境的恢复周期,制定详细的备份计划,然后严格执行

2)对备份,要在一定的时间内利用测试环境,进行故障恢复的练习

三)备份恢复分类

1)逻辑备份与恢复--面向object

①传统的导入导出:exp/imp:

②数据泵导入导出:expdp/impdp

逻辑备份就是热备数据库对象某一时刻状态,不能运用在mediafailure上,逻辑备份的恢复就是还原备份,没有recover的概念。

2)物理备份与恢复--面向datafile

①手工备份与恢复,也叫用户管理的备份与恢复(UMAN),通过OS的命令,完成备份与还原,然后再运用日志进行恢复。

②自动备份与恢复,利用oracle的备份恢复工具RMAN,使还原与恢复过程自动化程度较高,可以备份恢复ASMFILE。

物理备份从方式上可以有一致性备份(冷备)和非一致性备份(热备)

完整的备份策略应该以物理备份为主,逻辑备份为辅(用于备份一些重要的表)

3)闪回技术--面向人为的逻辑错误

不需要利用备份。一种利用undo数据或闪回日志的快速恢复技术。可以针对不同层面问题进行逻辑恢复,11g支持七种flashback

方式。

四)完全恢复与不完全恢复

mediafailure后,需要运用日志进行recover。

1)完全恢复:

利用完整备份或部分备份,可以将datafile恢复到failure前得最后一次commit,不会出现数据丢失。

2)不完全恢复

需要运用完整备份和日志将database恢复到过去的某个时间点(或SCN),有数据丢失。

五)归档与非归档

1)归档模式:redolog写入archivelog

2)非归档模式:没有archivelog,redologfile循环覆盖

当处于非归档模式下时,在丢失数据文件后唯一的选择是执行完整的数据库还原,而不能进行recover。

第二章:手工备份与恢复(uman)

一)相关命令

1)备份和还原都使用OS命令(数据库是文件系统),如linux中的cp

2)恢复用sqlplus命令:recover

二)备份前进行检查:

1)检查需要备份的数据文件

SQLselectnamefromv$datafile;

SQLselectfile_id,file_name,tablespace_namefromdba_data_files;

2)检查要备份的控制文件

SQLselectnamefromv$controlfile;

3)在线redo日志可以不做备份

三)dbv检查坏块

在手工备份前,应该检查datafile是否有坏块,备份完后对备份也要做检查。

对某个datafile做坏块检查

$dbvfile=/u01/oradata/prod/users01.dbffeedback=50

DBVERIFY-开始验证:FILE=/u01/oradata/prod/users01.dbf

四)冷备的注意事项:

1)必须干净的关闭数据库,以保证数据一致性。

SQLshutdwonimmediate;

2)在OS下必须备份所有数据文件(完整备份)

3)在OS下必须备份控制文件(至少备份一个)

4)非归档备份还原策略

恢复时还原所有备份,重建所有在线日志,没有recover步骤。

SQLstartupmount

SQLalterdatabaseclearlogfilegroupn;(n为所有在线日志组)

SQLalterdatabaseopen;

五)手工非一致性备份(热备份)

1)在备份前要进入热备模式,备份后要结束热备模式

执行beginbackup设置备份模式(在数据文件上生成检查点,写入scn,将来恢复的时候以此scn为起点)

对只读的表空间不能做热备份,临时表空间不需要备份,特别强调:NOARCHIVE模式下不支持手工热备。

对整个数据库设置热备模式:SQLalte

显示全部
相似文档