Oracle学习笔记十三:备份与恢复基础知识
一、备份的重要性
1)在oracle数据库维护中,备份与恢复是重中之重的问题,虽然有很多时候数据库系统运行比较慢,但是对数据库的数据丢失来说,显然数据丢失的损失是最大的,也是一个企业的生命价值所在。
2)对关键业务数据进行持续定期的备份是恢复策略中的一个重要部分。
3)备份方式很多,无论采取哪种方式,至少要保持两份备份拷贝,一份用于在线恢复,另一份则保留在离线环境中。这样,如果数据中心发生洪水、火灾或其它灾害事故,离线拷贝可用作恢复的最后手段。
二、备份的分类
2.1、完整备份与增量备份
1)完整备份:一个或多个数据文件的完整副本,包括从备份开始的所有级的数据块。
2)增量备份:包含从最近一次备份以来被修改过或增加过的数据块。增量备份又分为0级增量备份、1级差异增量备份、1级累积增量备份,增量备份支持归档和非归档模式,而且只能使用rman的时候才可以实现增量备份。
- 差异增量:是备份上级及同级备份以来所有变化的数据块,差异增量是默认增量备份。
- 累积增量:是备份上级备份以来所有变化的数据块。
2.2、完全备份与非完全备份
1)完全备份:包括所有的数据文件、控制文件、参数文件、密码文件、在线重做日志文件、归档日志文件。
2)非完全备份:比如备份一个或多个数据文件、一个或多个表空间等,非完全备份只限于在归档模式下才有效。
2.3、脱机备份与联机备份
1)脱机备份:是在数据库关闭的时候发生的备份,又叫冷备分,是在一致性关闭数据库后,控制文件scn与数据文件头部的scn一致。
2)联机备份:是在数据库使用的情况下发生的备份,又称为非一致性备份或热备份,联机备份一个数据文件的scn与控制文件不一致。联机备份可以是全备,也可以是部分备份,必须在归档模式下才可以完成。
2.4、物理备份与逻辑备份
1)物理备份:是所有物理文件的一个副本,比如数据文件、日志文件、控制文件、归档文件等,这些文件都存在本地磁盘或相应的存储上面,而物理备份包括冷备份(非归档模式)或热备份(归档模式)。
2)逻辑备份:是将表、索引、存储过程等,使用Oracle的exp/expdp导出来的二进制文件,通过Oracle的imp/impdp导入到数据库。可以说逻辑备份是对物理备份的一种补充,一般都是用在数据迁移上面。
三、备份与恢复涉及的文件
1)数据文件
2)控制文件
3)重做日志文件
4)参数文件
5)归档日志文件
四、还原与恢复
数据库的恢复策略是使用最近一次备份来实现数据库的还原,然后使用归档日志和联机日志将数据库恢复到最新或特定的状态。
1)还原:是从最近的备份文件中查找所需要的内容,并将其拷回到原来位置的过程称为还原。可以基于数据库、表空间、数据文件、控制文件、参数文件进行还原。
2)恢复:在还原的基础 上,使用归档日志文件和联机日志文件将数据库刷新到最新的scn,使数据库保持一致性。
五、备份恢复的工具
5.1、imp/impdp、exp/expdp
进行逻辑备份恢复,可以跨平台迁移,支持全库、用户、表级的备份与恢复,特别是在oracle 10g以后,expdp与impdp备份的速度比较快,支持多并发。
5.2、rman
物理备份恢复,支持命令行及图形接口,可以通过第三方软件(nbu\legato\tsm等)及磁带机进行备份,这个工具的功能非常强大。
- rman支持备份整个数据库、表空间、数据文件、控制文件、还有归档日志文件等,而且可以通过rman脚本来实现快捷的备份操作。
- rman支持增量备份,跳过部分块备份,还可以调整备份的速度。
- rman可以在备份的时候检测一些损坏的数据库,还可以通过多通道并发、限制io的速度、单次备份的文件数等等来提高备份的性能。
5.3、第三方工具,可以使用操作系统命令、其它工具来实现一些特殊情况下的备份与恢复。
5.4、dataguard、goldengate也可以实现数据库的容灾备份与恢复。