聊聊RMAN的ARCHIVELOG DELETION参数(下)
RMAN是Oracle推出的官方备份还原工具。经过几个大版本的发展,RMAN已经支持多种备份介质和恢复策略的主要工具,也是业界普遍认可是Oracle备份还原官方策略。Archivelog是Oracle备份还原策略的重要组成元素,不完全备份+连续的归档日志可以让我们将数据库恢复到发生故障点,实现数据的无损失恢复。但是,现实生活中archive log给没有经验的运维人员也带来了不少的问题,归档空间占满引起Hang住、瞬间归档日志过多生成引起问题等。一些前辈也在不断强调“归档模式不美好”。
聊聊RMAN的ARCHIVELOG DELETION参数(上)
RMAN是Oracle推出的官方备份还原工具。经过几个大版本的发展,RMAN已经支持多种备份介质和恢复策略的主要工具,也是业界普遍认可是Oracle备份还原官方策略。Archivelog是Oracle备份还原策略的重要组成元素,不完全备份+连续的归档日志可以让我们将数据库恢复到发生故障点,实现数据的无损失恢复。但是,现实生活中archive log给没有经验的运维人员也带来了不少的问题,归档空间占满引起Hang住、瞬间归档日志过多生成引起问题等。一些前辈也在不断强调“归档模式不美好”。在RMAN工作参数中,针对archive log,是可以设置专门的删除策略(Deletion)。在实践领域中,已经备份过或者确保安全传输的归档日志,其实就可以删除了,特别是在有限的Fast Recovery Area管理模式下。对于自动删除archive log的策略,比较常见的是applied to standby和shipped to standby,也就是Data Guard场景下。
使用dbms_flashback工具包实现闪回查询功能
Flashback Query是借助Oracle Undo过期数据而实现的一种方便的逻辑恢复功能。在Undo Tablespace支持的情况下,我们可以查询到过去一个特定的时间点(或者SCN点)某个数据表的时间版本。标准的Flashback Query语句是需要借助as of timestamp| as of scn语句在数据表后面,用于指定查看的数据表过去时间点是...
聊聊闪回事务查询Flashback Transaction Query
继续聊聊Flashback家庭成员。Flashback Version Query、Flashback Query和本次介绍的Flashback Transaction Query相同,都是依赖于Undo表空间的过期数据。和Version Query和Query不同的是,Flashback Transaction Query将数据变化的粒度细化到了事务级别,而且支持用户进行Undo操作,准备好相关的SQL语句。...
聊聊闪回版本查询Flashback Version Query
“忘记备份”是几年前看一位行业前辈的经验谈中让笔者记忆深刻的工作军规。对DBA而言,备份通常指的是“Media Backup”,在Oracle世界中就是各种冷备份文件、备份集合和归档日志。工作时间越长,胆子其实就是越小。很多很多时候,有备份并不意味着可以高枕无忧。这种论断主要是基于两方面的因素,其一是备...
使用Flashback Transaction方法来恢复数据表数据
进行精细粒度的数据误操作还原,是我们在实际工作中经常遇到的场景。Oracle基于Redo Log和Undo机制,提供实现了诸多分支技术,如Flashback、Log Miner等来进行多粒度的数据恢复。在Oracle 11g中,dbms_flashback.transaction_backout方法提供了在数据库online状态下,直接逆回数据库事务和相关依赖事务的能力。...
使用Flashback Database进行数据表级别的定点恢复
Oracle已经提供了非常完善的数据备份恢复措施,从9i开始,针对一些常见场景下的小规模数据恢复需求,Oracle推出了一系列的Flashback技术。Flashback中文称为“闪回”,Oracle的闪回技术并不是一个单独技术,而是根据不同的恢复粒度而推出的一系列数据快速恢复技术。更重要的是,各个Flashback技术虽然名称...
Oracle RMAN实现“一键式”表空间TSPITR
从Oracle 10g之后,小规模数据误删除、误操作其实已经有了很好的解决方案,就是flashback技术。Flashback Query和Flashback Drop,就可以从数据记录和数据表这类比较细的粒度。在实际业务场景中,相对比“天塌地陷”的全库恢复场景,单Schema、单Tablespace甚至单数据表的局部恢复更加有施展的空间。出现误...
三种Oracle RMAN备份加密策略(下)
说明:本篇参考eygle老师的作品《Oracle DBA手记4:数据安全警示录》,特此表示感谢。3、Oracle Wallet加密策略 Oracle Wallet是一种加密安全策略,过去我们在TDE(Oracle透明加密)部分研究过这个组件。简单的说,Oracle Wallet就是在本机上配置一个加密配置文件,通过SQL命...
三种Oracle RMAN备份加密策略(上)
说明:本篇参考eygle老师的作品《Oracle DBA手记4:数据安全警示录》,特此表示感谢。 数据安全,特别是企业核心业务数据的安全问题,是当今全社会共同关注的问题。从前几天轰轰烈烈的携程服务终止,风闻数据库被删除事件,到去年多次发生的互联网公司用户账号密码外泄风波,都不断挑战业界紧绷的...
使用手工方法Clone异名数据库实验
搭建数据库Clone对象是我们经常遇到的日常运维需求。在实际开发测试过程中,经常需要快速拷贝一份包含业务数据的数据库环境。之前,我们已经介绍过如果使用RMAN Duplicate功能进行相关操作。本篇一起来讨论如何使用传统的SQL Plus工具进行创建克隆数据库。 1、环境介绍和实验目标 我...
使用RMAN Duplicate方法搭建异名数据库实验
Oracle RMAN工具工作环境一共有三个数据库源对象:target、catalog和auxiliary。target就是进行备份操作的源数据库,我们进行备份还原的对象都是在这个库上进行。默认情况下,备份集合信息是保存在controlfile,catalog是一个可选数据库,备份元数据可以单独放在catalog数据库中保存。auxiliary是作为辅助...
使用RMAN进行同名数据库异地环境搭建实验
随着版本不断地提升,RMAN作为标准备份工具的作用地位是不断的被增强的。从过去传统的备份还原工具,到现在新环境迁移、DG搭建,我们都可以看到RMAN工具增强的身影。本篇就以RMAN为工具,利用RMAN备份在新主机上搭建服务名相同的数据库。由于环境所限,笔者采用的方法是:先进行备份获取,之后删除掉原数据...
使用append+nologging引起恢复故障实验
Oracle的nologging属性是非常容易被滥用的。在我们之前的文章中,探讨过append+nologging对于Redo Log的影响。从文章的结论看:如果我们使用append配合nologging,的确是可以减少Redo Log的生成的。但是,这样做真的有好处吗?希望减少Redo Log生成的思路无非是:Redo Log生成量少了,这样在LGWR写入的...
聊聊Oracle Data Recovery Advisor(DRA)(下)
上篇我们介绍了Oracle 11g的Data Recover Advisor(DRA)特性,并且给出了一个在启动过程出错故障的演示。本篇我们继续看数据库执行过程中,问题过程修复。 4、运行过程中故障 在运行过程中的oracle故...
聊聊Oracle Data Recovery Advisor(DRA)(上)
对DBA而言,数据备份、还原是日常工作的基本功。Oracle发展到今天,自动化、智能化是一个重要的发展方向。数据库可以自动的诊断问题故障,并且解决修复错误,可能离我们并不遥远。 数据备份和还原,...
控制文件损坏重建实验(下)
在上篇中,我们讨论并且演示了如何利用Trace文件恢复控制文件。但是我们的控制文件中包括的备份信息,却不能保存在Trace文件的create control file语句里面。 那么,我们有什么方法保存住备份信息呢?具体有...
控制文件损坏重建实验(上)
控制文件(Control File)是Oracle运行和工作的心脏。在Oracle运行过程中,需要实时借助控制文件来记录、响应关键信息。在控制文件中,Oracle保存了包括数据和日志文件名称位置、备份元数据信息、系统SCN信息。&nb...
Exp和数据泵(Data Pump)的query参数使用
Oracle提供了逻辑备份和物理备份两种备份手段。早期的Exp/Imp和10g之后的Data Pump都是实现逻辑备份的重要方式。借助两个逻辑备份工具,我们可以方便的对数据库进行多角度、多维度的备份还原操作。 ...
Online Redo Log损坏处理实验(下)
最后我们一起来看一下非一致性关闭条件下当前日志组删除的处理。 6、非一致性关闭当前日志组处理 我们回到10g Windows版本进行实验。 SQL> select group#, archiv...