Oracle数据库的可恢复性设置

简介: 整理自《Oracle 11g OCP/OCA 认证指南》 001     为了保证数据库的最大可恢复性,必须多路复用控制文件;必须多路复用联机重做日志;必须以归档日志模式运行数据库,并多路复用归档日志文件;最后必须作常规备份。
整理自《Oracle 11g OCP/OCA 认证指南

001
    为了保证数据库的最大可恢复性,必须多路复用控制文件;必须多路复用联机重做日志;必须以归档日志模式运行数据库,并多路复用归档日志文件;最后必须作常规备份。

002 保护控制文件
    控制文件虽小,但很重要。它用于加载数据库,在数据库打开时,可不断地读和写控制文件。如果控制文件丢失了,则可以进行恢复;但这一操作并不总是很容易,因此最好不要出现这种情况,因为必须至少有两个位于不同物理设备上的控制文件的副本。最多可有8个控制文件的多路复用副本。
    如果控制文件是多路复用的,那么从导致控制文件丢失的介质失败中恢复只要将备份的控制文件复制到受损或丢失的控制文件之上就行了。但控制文件受损会导致停机。当Oracle检测控制文件是受损还是丢失时,实例会因为实例失败立即终止。
    要移动或添加控制文件副本,首先关闭数据库。在数据库打开时不能进行任何控制文件操作。然后使用操作系统命令移动或复制控制文件。再接着,编辑control_files参数,指向新的位置。如果使用静态的initSID.ora参数文件,则可以用任何文本编辑器编辑它。如果使用动态的spfileSID.ora参数文件,则以nomount模式启动数据库,发出alter system命令并把作用域设为spfile(之所以是必要的,因为它是个静态参数),将新的副本用于数据库下次加载时。最后,像平常一样关闭然后打开数据库。

003 保护联机重做日志文件
    DBA不允许丢失当前联机日志文件组的所有备份。如果出现这种情况,那么就会丢失数据。在丢失当前联机日志文件组的所有成员时不丢失数据的唯一方式是配置一个无数据损失的data guard环境。
    为什么受不丢失当前联机日志文件组的所有成员至关重要呢?答案与实例恢复有关。实例崩溃后,SMON进程会使用当前联机日志文件组的内容进行前滚恢复,从而修复数据库中的任何损坏。如果当前联机日志文件组由于未被多路复用以及一个成员因介质受损被破坏而变得不可用,那么SMON进程无法进行前滚恢复。如果SMON进程无法进行前滚修正数据库的损坏,那么不可能打开数据库。
    与多路复用的控制文件一样,一个日志文件组中的多个成员在理想情况下应当位于不同的磁盘上不同的控制器上。
    对联机重做日志文件的写操作最终将成为Oracle环境中的一个瓶颈:执行DML语句的速度不能快于LGWR进程将变更写至磁盘的速度。因此在高吞吐量的系统中,需要确保重做日志文件位于速度最快的控制器所服务的最快速磁盘上。
    如果重做日志文件组的一个成员被损坏或丢失,那么数据库在存在备份成员的情况下仍然会保持打开状态。这与控制文件不同, 控制文件的任何副本的损坏都会使数据库立即崩溃。同样, 只要存在至少两个重做日志文件组并且每个组至少具有一个有效的成员,那么在数据库打开时也可以添加或移动重做日志文件组以及组中的成员。

004 归档日志模式和归档器进程
变量
描述
%d
唯一的数据库标识符,如果将多个数据库归档到同一目录,这是必须的
%t
线程号,显示为v$instances视图的thread#列,除了在RAC数据库中使用之外,这个变量没有任何意义
%r
场景(incarnation)号。如果进行了不完全恢复,这个变量就十分重要
%s
日志切换序列号。这个变量能够保证任何一个数据库中的归档日志都不会彼此重写
归档相关的几个参数:
log_archive_dest_n
log_archive_dest
log_archive_duplex_dest
log_archive_min_succeed_dest

    如果ARCn进程遇到写归档日志文件的问题,最终数据库会挂起。这将取决于目标数、必须成功的最少数目,以及有问题的目标是否是强制的。归档失败的一般原因是目标已满。因此有必要监视归档的进程,将归档日志文件从磁盘目标迁移至磁带,为更多的归档操作释放空间。在任何情况下,应定期将所有归档日志备份到磁带上。这可手动或使用RMAN完成。
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
5天前
|
DataWorks Oracle 关系型数据库
DataWorks操作报错合集之尝试从Oracle数据库同步数据到TDSQL的PG版本,并遇到了与RAW字段相关的语法错误,该怎么处理
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
22 0
|
6天前
|
运维 分布式计算 DataWorks
DataWorks产品使用合集之dataworks为子账号创建DataWorks访问密钥的基本步骤如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
20 0
|
6天前
|
DataWorks 安全 数据库
DataWorks产品使用合集之在DataWorks中,使用Power BI Desktop来连接Hologres数据库需要设置白名单如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
25 2
|
12天前
|
存储 Oracle 网络协议
Oracle 11gR2学习之二(创建数据库及OEM管理篇)
Oracle 11gR2学习之二(创建数据库及OEM管理篇)
|
16天前
|
Oracle 网络协议 关系型数据库
异地使用PLSQL远程连接访问Oracle数据库【内网穿透】
异地使用PLSQL远程连接访问Oracle数据库【内网穿透】
|
16天前
|
SQL Oracle 安全
Oracle数据库中的事务和锁
【4月更文挑战第19天】Oracle数据库的事务和锁是确保数据完整性和并发控制的核心机制。事务遵循ACID原则,保证操作的原子性、一致性、隔离性和持久性。通过COMMIT或ROLLBACK来管理事务更改。锁包括共享锁(读)、排他锁(写)、行级锁和表级锁,用于控制并发访问。自动锁机制在DML操作时生效,防止数据冲突。事务和锁共同维护数据库的稳定和安全。
|
16天前
|
存储 Oracle 关系型数据库
Oracle RAC:数据库集群的舞动乐章
【4月更文挑战第19天】Oracle RAC是Oracle提供的高可用性数据库解决方案,允许多个实例共享同一数据库,确保业务连续性和数据完整性。通过集群件和全局缓存服务实现服务器间的协调和通信。RAC提供高可用性,通过故障转移应对故障,同时提升性能,多个实例并行处理请求。作为数据管理员,理解RAC的架构和管理至关重要,以发挥其在数据管理中的最大价值。
|
Oracle 关系型数据库 数据库
oracle数据库控制文件的备份和恢复之三RMAN自动备份和恢复
使用RMAN自动备份的控制文件向数据库中恢复控制文件
312 0
|
Oracle 关系型数据库 数据库
|
SQL Oracle 关系型数据库
oracle数据库控制文件的备份和恢复之一手动备份和恢复
实验步骤:手动备份和恢复oracle控制文件
521 0

推荐镜像

更多