rman删除7天前备份_备份基础知识

本文详细介绍了Oracle数据库的备份类型,包括物理备份和逻辑备份,重点讲解了热备份和冷备份的操作。在热备份中,讨论了如何在RMAN中删除7天前的归档日志,以保持数据库的高效运行。文章强调了备份的目的、数据库状态对备份的影响,以及备份的一致性和不一致性。此外,还提到了归档日志、闪回恢复区和数据库恢复的相关知识。
摘要由CSDN通过智能技术生成

备份的目的是为了恢复。

一、备份类型

1.物理备份:核心是复制文件。如RMAN。

2.逻辑备份:核心是复制数据。如EXP和EXPDP,DBLINK+CREATE TABLE AS,但是exp和expdp在处理大量数据时,效率不佳,并且也没有对增量备份提供直接支持。

倒是更常被应用于数据迁移的解决方案。

二、数据库状态:启动状态,关闭状态。

1.热备份:启动状态,也叫联机备份,热备需要用到归档日志或联机重做日志,才能将数据库恢复到一致的状态,所以一般需要在归档模式下。

简单介绍一下归档命令:

查看数据库是否在归档模式下:archive log list;如果是disable

shutdown immediate ,然后启动到mount状态下startup mount,

开启归档alter database archivelog

打开数据库alter database open。

这里出现了一个名词叫闪回恢复区flash_recover_area,用archive log list可以看到的存档终点USE_DB_RECOVERY_FILE_DEST默认的存放归档的目录。可以用show parameter db_recover查看。也可以v$recovery_file_dest中查看相应信息。如果达到了闪回恢复区的大小,也就是归档满了,数据库就会夯住,通常的解决办法就是增大闪回恢复区,通过这条语句:alter system set db_recover_file_dest_size=nG;

当然也可以修改归档的存放目录,因为有时候业务会特别繁忙,即使oracle会自动管理闪回恢复区,也会很可能满掉。所以我们用以下语句来就该归档目录:

alter system set log_archive_dest_1='location=/u01/app/oracle/arch';

我在实际情况中遇到归档目录满的时候直接清除一部分归档日志:(这部分那就涉及到了rman的知识,稍后在学习RMAN过程中会写)

rman target sys/password@orcl在RMAN命令窗口中,输入如下命令:

crosscheck archivelog all;

delete expired archivelog all;

或者删除指定时间之前的archivelog:

DELETE (NOPROMPT) ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';(指定删除7天前的归档日志)

DELETE ARCHIVELOG UNTIL TIME 'sysdata - 1';

热备份不需要关闭数据库,在备份的时候用户仍然可以直接连接并操作数据,对于7*24小时的应用而言必须进行热备份。

2.冷备份:数据库关闭状态创建的备份就是冷备份,也叫脱机备份。也就是在不活跃状态下创建的备份。其中open read only模式不能算活跃状态,算是活着,不能进行写操作。因此,open read only下创建的备份也是冷的。

冷备通常步骤:

1.查询数据文件datafile的所在目录:

SQL>SELECT name FROM v$datafile;

查询控制文件controlfile的所在目录:

SQL>SELECT name FROM v$controlfile;

查询重做日志文件的所在目录:

SQL>SELECT member FROM v$logfile;

2.正常关闭数据库(非正常关闭的需要对数据库进行修复操作,需要用到归档日志或联机重做日志)

3.备份文件到备份的目录

cp 命令

4.然后启动数据库.

三、备份的状态

1.一致性备份

备份的数据文件和控制文件拥有相同的SCN,(数据库正常关闭,数据库置于未被打开状态,open read only)这几种情况下创建的备份才是一致性备份。

但是冷备份的一致性备份这种情况基本很少出现,因为应用一般都是7*24小时开机状态。

2.不一致性备份

通常数据库open read write或者shutdown abort 时都不是一致性备份。因为备份不可能同时完成,而数据文件时刻都在写,SCN时刻在变,备份完第N个,然后第N+1个数据文件的SCN有可能已经与之前的不同了。恢复必须借助归档日志或者重做日志,将数据恢复到一致性状态才能打开。所以数据库一定要归档。

*注意:热备肯定是不一致性备份,但是不一致性备份不一定是都是热备份,如shutdown abort 关闭的数据库。

四、备份规模

1.完全备份

a.非归档模式

b.归档模式

它们的有效备份和无效备份都在前文中提到,是否是归档,是否是开机状态,开机下是否有效,关机下是否有效。如图:

09e59153c26bcd5c5dcafc818bbe3fde.png

2.表空间备份

总的来说备份表空间就是对数据文件的备份,比如users 表空间占用了三个数据文件,我想备份users那就针对性的备份这三个数据文件就可以了。

*注意:只有满足其中之一才是有效备份:

a.当数据库处于归档模式

b.表空间为只读或者数据库为脱机状态。

1.数据文件的备份:保证不会被修改,才是有效的。(已经多次提到,比如归档,read only,offline)

2.控制文件的备份:没有control file数据库就无法启动到mount状态。

3.归档日志的备份:一致性恢复的必要条件。备份的目的是为了恢复。

一、备份类型

1.物理备份:核心是复制文件。如RMAN。

2.逻辑备份:核心是复制数据。如EXP和EXPDP,DBLINK+CREATE TABLE AS,但是exp和expdp在处理大量数据时,效率不佳,并且也没有对增量备份提供直接支持。

倒是更常被应用于数据迁移的解决方案。

二、数据库状态:启动状态,关闭状态。

1.热备份:启动状态,也叫联机备份,热备需要用到归档日志或联机重做日志,才能将数据库恢复到一致的状态,所以一般需要在归档模式下。

简单介绍一下归档命令:

查看数据库是否在归档模式下:archive log list;如果是disable

shutdown immediate ,然后启动到mount状态下startup mount,

开启归档alter database archivelog

打开数据库alter database open。

这里出现了一个名词叫闪回恢复区flash_recover_area,用archive log list可以看到的存档终点USE_DB_RECOVERY_FILE_DEST默认的存放归档的目录。可以用show parameter db_recover查看。也可以v$recovery_file_dest中查看相应信息。如果达到了闪回恢复区的大小,也就是归档满了,数据库就会夯住,通常的解决办法就是增大闪回恢复区,通过这条语句:alter system set db_recover_file_dest_size=nG;

当然也可以修改归档的存放目录,因为有时候业务会特别繁忙,即使oracle会自动管理闪回恢复区,也会很可能满掉。所以我们用以下语句来就该归档目录:

alter system set log_archive_dest_1='location=/u01/app/oracle/arch';

我在实际情况中遇到归档目录满的时候直接清除一部分归档日志:(这部分那就涉及到了rman的知识,稍后在学习RMAN过程中会写)

rman target sys/password@orcl在RMAN命令窗口中,输入如下命令:

crosscheck archivelog all;

delete expired archivelog all;

或者删除指定时间之前的archivelog:

DELETE (NOPROMPT) ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';(指定删除7天前的归档日志)

DELETE ARCHIVELOG UNTIL TIME 'sysdata - 1';

热备份不需要关闭数据库,在备份的时候用户仍然可以直接连接并操作数据,对于7*24小时的应用而言必须进行热备份。

2.冷备份:数据库关闭状态创建的备份就是冷备份,也叫脱机备份。也就是在不活跃状态下创建的备份。其中open read only模式不能算活跃状态,算是活着,不能进行写操作。因此,open read only下创建的备份你也是冷的。

冷备的通常步骤:

1.查询数据文件datafile的所在目录:

SQL>SELECT name FROM v$datafile;

查询控制文件controlfile的所在目录:

SQL>SELECT name FROM v$controlfile;

查询重做日志文件的所在目录:

SQL>SELECT member FROM v$logfile;

2.正常关闭数据库(非正常关闭的需要对数据库进行修复操作,需要用到归档日志或联机重做日志)

3.备份文件到备份的目录

cp 命令

4.然后启动数据库.

三、备份的状态

1.一致性备份

备份的数据文件和控制文件拥有相同的SCN,(数据库正常关闭,数据库置于未被打开状态,open read only)这几种情况下创建的备份才是一致性备份。

但是冷备份的一致性备份这种情况基本很少出现,因为应用一般都是7*24小时开机状态。

2.不一致性备份

通常数据库open read write或者shutdown abort 时都不是一致性备份。因为备份不可能同时完成,而数据文件时刻都在写,SCN时刻在变,备份完第N个,然后第N+1个数据文件的SCN有可能已经与之前的不同了。恢复必须借助归档日志或者重做日志,将数据恢复到一致性状态才能打开。所以数据库一定要归档。

*注意:热备肯定是不一致性备份,但是不一致性备份不一定是都是热备份,如shutdown abort 关闭的数据库。

四、备份规模

1.完全备份

a.非归档模式

b.归档模式

它们的有效备份和无效备份都在前文中提到,是否是归档,是否是开机状态,开机下是否有效,关机下是否有效。如图:

09e59153c26bcd5c5dcafc818bbe3fde.png

2.表空间备份

总的来说备份表空间就是对数据文件的备份,比如users 表空间占用了三个数据文件,我想备份users那就针对性的备份这三个数据文件就可以了。

*注意:只有满足其中之一才是有效备份:

a.当数据库处于归档模式

b.表空间为只读或者数据库为脱机状态。

1.数据文件的备份:保证不会被修改,才是有效的。(已经多次提到,比如归档,read only,offline)

2.控制文件的备份:没有control file数据库就无法启动到mount状态。

3.归档日志的备份:一致性恢复的必要条件。

结束语

此刻打盹,你将做梦;而此刻学习,你将圆梦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值