Oracle数据库中闪回恢复的详细分析

数据库 Oracle
以下的文章主要涉及到Oracle数据库中的闪回恢复的相关内容的描述,如果你对其相关的实际操作有兴趣的话,你就可以对以下的文章点击观看了。

我们今天主要和大家分享的是Oracle数据库中的闪回恢复,其中包含Oracle备份和恢复案例 ,还有相关的Oracle 学习笔记:,Backup & Recovery 常用的相关命令 ,以及 重建Control File的实际内容的描述。

 

更多相关推荐 Oracle9i开始提供闪回查询,以便能在需要的时候查到过去某个时刻的一致性数据,这是通过Undo实现的。这个功能有很大的限制,就是相关事务的undo不能被覆盖,否则就无力回天了。oracle10g大大的增强了闪回查询的功能,并且提供了将整个数据库回退到过去某个时刻的能力,这是通过引入一种新的flashback log实现的。

flashback log有点类似redo log,只不过redo log将数据库往前滚,flashback log则将Oracle数据库往后滚。为了保存管理和备份恢复相关的文件,oracle10g提供了一个叫做闪回恢复区(Flashback recovery area)的新特性,可以将所有恢复相关的文件,比如flashback log,archive log,backup set等,放到这个区域集中管理。

 

1.设置闪回恢复区

闪回恢复区主要通过3个初始化参数来设置和管理

 

db_recovery_file_dest:指定闪回恢复区的位置

 

db_recovery_file_dest_size:指定闪回恢复区的可用空间大小

 

db_flashback_retention_target:指定Oracle数据库可以回退的时间,单位为分钟,默认1440分钟,也就是一天。当然,实际上可回退的时间还决定于闪回恢复区的大小,因为里面保存了回退所需要的 flash log。所以这个参数要和db_recovery_file_dest_size配合修改。

 

2.启动flashback database

设置了闪回恢复区后,可以启动闪回数据库功能。

 

首先,数据库必须已经处于归档模式

那么如何设置归档呢?很简单的步骤

1.关闭数据库

 

 

  1. SQL> shutdown immediate;  

 

2.启动Oracle数据库为mount模式

 

 

  1. SQL> startup mount  

 

3.显示和修改归档模式

 

 

  1. SQL> archive log list  
  2. SQL> alter database archivelog;  
  3. SQL> alter database open  

 

 

4.设置归档日志的格式

 

 

  1. SQL>alter system set log_archive_format='ARC%s%t%r.log' scope=spfile;  

 

5.设置归档日志的存放路径

 

 

  1. SQL>alter system set log_archive_dest='+data/arcl' scope=spfile;  
  2. SQL>shutdown immediate  
  3. SQL>startup  

 

 

6.强制切换归档日至

 

 

  1. SQL>alter system switch logfile;  

 

7.取消归档

 

 

  1. SQL>alter database noarchivelog;  

 

 

参数

 

1.格式参数

 

%s 日志序列号

 

%S 日志序列号(带前导的0)

 

%t 重做线程编号

 

%a 活动的ID号

 

%dOracle 数据库ID号

 

%r RESELOGS的iD值

 

 

  1. SQL> archive log list;   
  2. Database log mode Archive Mode  
  3. Automatic archival Enabled  
  4. Archive destination USE_DB_RECOVERY_FILE_DEST  
  5. Oldest online log sequence 156  
  6. Next log sequence to archive 158  
  7. Current log sequence 158 

 

 

然后,启动Oracle数据库到mount状态

 

  1. SQL> shutdown immediate;   
  2. Database closed.  
  3. Database dismounted.  
  4. ORACLE instance shut down.  
  5. SQL> startup mount   
  6. ORACLE instance started.  
  7. Total System Global Area 285212672 bytes  
  8. Fixed Size 1218992 bytes  
  9. Variable Size 75499088 bytes  
  10. Database Buffers 205520896 bytes  
  11. Redo Buffers 2973696 bytes  
  12. Database mounted.  
  13. SQL>alter database flashback on;   

 

上述的相关内容就是对Oracle数据库中的闪回恢复的部分内容的描述,希望会给你带来一些帮助在此方面。

【编辑推荐】

  1. 访问 Oracle 数据库的实例描述
  2. Oracle数据库的密集型实际应用程序的开发
  3. 提高 Oracle JDBC的性能的办法
  4. Oracle自动编号列的创建
  5. Oracle数据安全性的介绍
责任编辑:佚名 来源: 博客园
相关推荐

2009-11-20 13:11:44

Oracle XML数

2010-04-21 13:40:04

Oracle数据库

2010-04-26 18:17:19

Oracle存储过程

2010-04-26 14:32:21

Oracle SQL

2010-04-12 10:53:07

Oracle SQL

2010-04-15 12:43:06

Oracle数据库

2009-08-10 17:34:42

C#数据库连接池

2010-04-15 11:41:21

Oracle 数据库

2009-12-31 15:39:46

ADO.NET访问数据

2009-06-18 14:00:51

2009-09-25 14:23:39

2009-09-28 10:39:01

Hibernate基础

2009-11-03 10:09:33

Oracle表空间

2010-03-04 09:30:40

Linux动态库

2009-12-03 17:41:40

PHP应用发展

2021-10-25 19:52:52

IntentFilte

2009-09-14 13:50:35

LINQ编程模型

2009-09-08 15:56:50

Linq使用Group

2010-01-06 13:50:37

.NET Framew

2010-02-23 17:44:22

WCF数据契约
点赞
收藏

51CTO技术栈公众号