【RMAN】数据库备份之冷备份

冷备份,数据库在非open状态下,个人认为都是可以称之为“冷”的。

数据库经过干净关闭之后,再处于mount或者shutdown状态时,我们可以称之为“冷”的,因为数据库不会有更新。此时针对数据库的备份就称为冷备份。

所以,冷备份可以是shutdown状态下基于操作系统的cp等命令的拷贝备份,也可以是处于mount状态下的基于rman(恢复管理器)工具的备份。

shutdown状态下不讨论。

在mount状态下,基于rman工具的冷备份,此时数据库可以是非归档模式,也可以是归档模式。

不管是数据库处于归档还是非归档,在mount模式下的冷备份,都可以是完整备份,也可以增量备份。


下面笔记一下非归档数据库在mount状态下的rman完整和增量备份:

SQL> select log_mode from v$database;


LOG_MODE
------------
NOARCHIVELOG


已用时间:  00: 00: 00.06
SQL> select status from v$instance;


STATUS
------------
MOUNTED


已用时间:  00: 00: 00.00
SQL>

数据库置于非归档,并且在mount状态。并且数据库目前没有任何备份:

RMAN> list backup;


说明与资料档案库中的任何备份都不匹配


RMAN> list backupset;


说明与资料档案库中的任何备份都不匹配


RMAN> list copy;


说明与资料档案库中的任何数据文件副本都不匹配
说明与资料档案库中的任何控制文件副本都不匹配
说明与资料档案库中的任何归档日志都不匹配


RMAN>

下面使用rman进行非增量备份的全库完整备份:

RMAN> backup database;


启动 backup 于 30-9月 -15
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00004 名称=D:\ORADATA\DENVER\USERS01.DBF
输入数据文件: 文件号=00001 名称=D:\ORADATA\DENVER\SYSTEM01.DBF
输入数据文件: 文件号=00002 名称=D:\ORADATA\DENVER\SYSAUX01.DBF
输入数据文件: 文件号=00005 名称=D:\ORADATA\DENVER\EXAMPLE01.DBF
输入数据文件: 文件号=00003 名称=D:\ORADATA\DENVER\UNDOTBS01.DBF

通道 ORA_DISK_1: 正在启动段 1 于 30-9月 -15
通道 ORA_DISK_1: 已完成段 1 于 30-9月 -15
段句柄=C:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\DENVER\BACKUPSET\2015_09_30\O1_MF_NNNDF_TAG20150930T090304_C0PF697W_.BKP 标记=TAG20150930T090304 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:02:55
通道 ORA_DISK_1: 正在启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
备份集内包括当前控制文件
备份集内包括当前的 SPFILE

通道 ORA_DISK_1: 正在启动段 1 于 30-9月 -15
通道 ORA_DISK_1: 已完成段 1 于 30-9月 -15
段句柄=C:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\DENVER\BACKUPSET\2015_09_30\O1_MF_NCSNF_TAG20150930T090304_C0PFCSRY_.BKP 标记=TAG20150930T090304 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 30-9月 -15


RMAN>


很明显,backup database命令会进行一个完整备份(该备份不是0级备份,也不能用作0级备份),并且默认会将数据文件备份到一个备份集,控制文件和spfile会备份到另一个备份集。默认启动disk类型的一个channle(即实例启动一个服务器进程用于rman备份)。


将该数据库做一个0级完整备份:

RMAN> backup incremental level 0 database;


启动 backup 于 30-9月 -15
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动增量级别 0 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00004 名称=D:\ORADATA\DENVER\USERS01.DBF
输入数据文件: 文件号=00001 名称=D:\ORADATA\DENVER\SYSTEM01.DBF
输入数据文件: 文件号=00002 名称=D:\ORADATA\DENVER\SYSAUX01.DBF
输入数据文件: 文件号=00005 名称=D:\ORADATA\DENVER\EXAMPLE01.DBF
输入数据文件: 文件号=00003 名称=D:\ORADATA\DENVER\UNDOTBS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 30-9月 -15
通道 ORA_DISK_1: 已完成段 1 于 30-9月 -15
段句柄=C:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\DENVER\BACKUPSET\2015_09_30\O1_MF_NNND0_TAG20150930T091655_C0PG07W4_.BKP 标记=TAG20150930T091655 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:02:55
通道 ORA_DISK_1: 正在启动增量级别 0 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
备份集内包括当前控制文件
备份集内包括当前的 SPFILE
通道 ORA_DISK_1: 正在启动段 1 于 30-9月 -15
通道 ORA_DISK_1: 已完成段 1 于 30-9月 -15
段句柄=C:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\DENVER\BACKUPSET\2015_09_30\O1_MF_NCSN0_TAG20150930T091655_C0PG5R38_.BKP 标记=TAG20150930T091655 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 30-9月 -15


RMAN>

全库的完整备份之后,成功实施0级的完整备份,所以0级备份不等于全库完整备份(虽然一样,但是rman认为不一样)。

数据库此时仍然处于mount状态,不重启,不打开。再做一次0级备份,看看:

<此处省略备份过程>

根据实施结果,此处的0级备份是成功的。所以不管数据库在上次0级备份之后是否有更改,每次0级备份都会成功。


数据库此时仍然处于mount状态,不重启,不打开。下面实施一次1级增量(默认为差异增量):

RMAN> backup incremental level 1 database;

启动 backup 于 30-9月 -15
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动增量级别 1 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00004 名称=D:\ORADATA\DENVER\USERS01.DBF
略过数据文件 00004, 因为它未更改
输入数据文件: 文件号=00001 名称=D:\ORADATA\DENVER\SYSTEM01.DBF
略过数据文件 00001, 因为它未更改
输入数据文件: 文件号=00002 名称=D:\ORADATA\DENVER\SYSAUX01.DBF
略过数据文件 00002, 因为它未更改
输入数据文件: 文件号=00005 名称=D:\ORADATA\DENVER\EXAMPLE01.DBF
略过数据文件 00005, 因为它未更改
输入数据文件: 文件号=00003 名称=D:\ORADATA\DENVER\UNDOTBS01.DBF
略过数据文件 00003, 因为它未更改
通道 ORA_DISK_1: 已取消备份, 因为所有文件都被跳过

通道 ORA_DISK_1: 正在启动增量级别 1 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
备份集内包括当前控制文件
备份集内包括当前的 SPFILE

通道 ORA_DISK_1: 正在启动段 1 于 30-9月 -15
通道 ORA_DISK_1: 已完成段 1 于 30-9月 -15
段句柄=C:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\DENVER\BACKUPSET\2015_09_30\O1_MF_NCSN1_TAG20150930T095832_C0PJGBTZ_.BKP 标记=TAG20150930T095832 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 30-9月 -15


RMAN>

可见,由于数据库没有更新,所以1级增量在扫描数据文件直接跳过。但是还是备份控制文件和spfile。


1级累积增量亦同:

RMAN> backup incremental level 1 cumulative database;


启动 backup 于 30-9月 -15
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动增量级别 1 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
输入数据文件: 文件号=00004 名称=D:\ORADATA\DENVER\USERS01.DBF
略过数据文件 00004, 因为它未更改
输入数据文件: 文件号=00001 名称=D:\ORADATA\DENVER\SYSTEM01.DBF
略过数据文件 00001, 因为它未更改
输入数据文件: 文件号=00002 名称=D:\ORADATA\DENVER\SYSAUX01.DBF
略过数据文件 00002, 因为它未更改
输入数据文件: 文件号=00005 名称=D:\ORADATA\DENVER\EXAMPLE01.DBF
略过数据文件 00005, 因为它未更改
输入数据文件: 文件号=00003 名称=D:\ORADATA\DENVER\UNDOTBS01.DBF
略过数据文件 00003, 因为它未更改
通道 ORA_DISK_1: 已取消备份, 因为所有文件都被跳过
通道 ORA_DISK_1: 正在启动增量级别 1 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集内的数据文件
备份集内包括当前控制文件
备份集内包括当前的 SPFILE
通道 ORA_DISK_1: 正在启动段 1 于 30-9月 -15
通道 ORA_DISK_1: 已完成段 1 于 30-9月 -15
段句柄=C:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\DENVER\BACKUPSET\2015_09_30\O1_MF_NCSN1_TAG20150930T100114_C0PJMDJF_.BKP 标记=TAG20150930T100114 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01
完成 backup 于 30-9月 -15


RMAN>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值