Oracle的数据库日志称为redo log,所有数据改变都记录redo log,可以用于修复受损的数据库。大型数据库都采用日志,这样设计的好处都是一样的。

Redo日志是分组的,一个库至少需要两组,默认是三组。每个组内的redo日志称为成员。默认情况下,每个组只有一个成员,这样没有冗余性,可能造成online redo log的丢失,要提高数据的可靠性,应该为两个组至少配置两个成员,交将这两个成员分配到不同的磁盘上。

Redo日志是轮流使用的,一个redo log满了,LGWR会切换到下一组redo log,这种操作称为log switch,做log switch的同时也会做checkpoint,相应的信息还会写入控制文件。

也可以手工执行log switch或checkpoint操作

SQL> alter system switch logfile;

System altered.

SQL> alter system checkpoint;

System altered.

查看系统的redo log信息:

SQL> select group#,sequence#,bytes,members,status from v$log;

GROUP# SEQUENCE# BYTES MEMBERS STATUS
---------- ---------- ---------- ---------- ----------------
1 5 104857600 1 INACTIVE
2 6 104857600 1 INACTIVE
3 7 104857600 1 CURRENT

SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
/home/oracle/oradata/gldb/redo03.log
/home/oracle/oradata/gldb/redo02.log
/home/oracle/oradata/gldb/redo01.log

可以在线添加online redo log组:

SQL> alter database add logfile group 4 ('/home/oracle/oradata/gldb/redo04.log') size 1m;

Database altered.

SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
/home/oracle/oradata/gldb/redo03.log
/home/oracle/oradata/gldb/redo02.log
/home/oracle/oradata/gldb/redo01.log
/home/oracle/oradata/gldb/redo04.log

可以在线添加online redo log组成员:

SQL> alter database add logfile member '/home/oracle/oradata/gldb/redo01b.log' to group 1;

Database altered.

SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
/home/oracle/oradata/gldb/redo03.log
/home/oracle/oradata/gldb/redo02.log
/home/oracle/oradata/gldb/redo01.log
/home/oracle/oradata/gldb/redo04.log
/home/oracle/oradata/gldb/redo01b.log

在线删除刚才添加的组和组成员:

SQL> alter database drop logfile group 4;

Database altered.

SQL> alter database drop logfile member '/home/oracle/oradata/gldb/redo01b.log';

Database altered.

SQL> select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
/home/oracle/oradata/gldb/redo03.log
/home/oracle/oradata/gldb/redo02.log
/home/oracle/oradata/gldb/redo01.log

归档Redo log文件:

启动日志归档有两个好处:
1,带有归档日志的数据库备份可以恢复到任意时间点。
2,可以在线备份数据库。

如果你的数据很重要,应该启用归档日志模式,否则数据库损坏时很可能只能恢复到上一次备份时的状态了。

缺省情况下,数据库是非归档日志模式。

可以用以下两条命令检查数据库的归档日志模式:

SQL> select archiver from v$instance;

ARCHIVE
-------
STOPPED

SQL> archive log list;

Database log mode No Archive Mode
Automatic archival Disabled
Archive destination /home/oracle/product/9.2.0/dbs/arch
Oldest online log sequence 7
Current log sequence 9

如果启用归档日志模式将在后面数据备份章节中介绍

转载于:https://blog.51cto.com/exchange111/1630103

Oracle redo相关推荐

  1. The number of Oracle redo threads (2) is not the same as the number of checkpoint threads (1)

    单实例数据库多日志线程,搭建ogg,启动抽取进程时提示一下错误: ERROR   OGG-00446  Oracle GoldenGate Capture for Oracle, extjms.prm ...

  2. oracle的redolog停止,Oracle Redo Log日志故障处理一则

    Oracle Redo Log日志故障处理一则 某日oracle服务器异常重启,当重启oracle数据时,发现redo log文件被损坏, 且这个日志文件是current状态的,导致数据库无法打开; ...

  3. MySQL redo log 重做日志 原理 Oracle Redo Log 机制 小结

    MySQL-重做日志 redo log -原理 [redo log buffer][redo log file]-原理 目录: 1.重做日志写入过程图 2.相关知识点汇总图 3.redo_log_bu ...

  4. Oracle redo/undo 原理理解

    Oracle redo/undo 原理理解 undefined 参考:https://www.iteye.com/blog/liwenshui322-1488949 https://blog.csdn ...

  5. Oracle——redo+undo总结

    <Oracle------redo> 重做日志文件(redo log file)对数据库来说至关重要,他们是数据库的事务日志: Oracle数据库维护着两类重做日志文件:在线重做日志文件( ...

  6. Oracle Redo 并行机制

    Redo log 是用于恢复和一个高级特性的重要数据,一个redo条目包含了相应操作导致的数据库变化的所有信息,所有redo条目最终都要被写入redo文件中去.Redo log buffer是为了避免 ...

  7. oracle redo删除,意外删除redo的恢复

    今天做了点删除redo log的测试,查阅资料和实际动手整理了一下的一些东西. A非当前联机日志被删除损坏 正常关闭数据库 shutdown immediate 我们在os上删除logfile red ...

  8. 有关 Oracle redo log

    Redo的内容 Oracle通过Redo来实现快速提交,一方面是因为Redo Log File可以连续.顺序地快速写出,另一个方面也和Redo记录的精简内容有关. 两个概念: 改变向量(Change ...

  9. oracle recover redo,oracle redo log日志(当前或非当前日志)损坏之后的db恢复

    出错情况: sql> alter database open; alter database open * 第 1 行出现错误: ora-01113: 文件 1 需要介质恢复 ora-01110 ...

  10. oracle redo 200mb,Oracle的redo log在各场景下的恢复

    Oracle的redo log非常重要,redo log损坏将导致数据库开法开启或数据丢失,针对redo log在各种场景下如何打开或恢复数据库,特别模拟测试说明: 各场景包括如下(共6个场景): 场 ...

最新文章

  1. 【Qt】解决在linux上使用Qt的媒体模块(Qt += multimedia)缺少模块multimedia的问题
  2. 35岁的程序员是“都挺好”还是“都挺惨”?\n
  3. 理解并解决IE的内存泄漏方式[翻译2]
  4. 计算机主板用塑料做的好吗,太震惊!你的键盘是否用了黑心塑料?
  5. react native 的底部导航栏以及跳转页面带参数
  6. ubuntu 16.10安装mysql_在Ubuntu 16.10安装mysql workbench报未安装软件包 libpng12-0错误的解决方法...
  7. 计算机键盘音乐好汉歌,好汉歌 MIDI File Download :: MidiShow
  8. C#——文件处理和字符串处理DEMO
  9. c语言求n到m之间的素数和
  10. CentOS linux7 设置开机启动服务
  11. leetcode404. 左叶子之和
  12. 操作系统的msxml组件版本过低_Zabbix 5.0 LTS 版本安装
  13. python三维图的坐标_用Python 画个六维图,涨姿势了
  14. BZOJ 2878: [Noi2012]迷失游乐园( 树形dp )
  15. 大数据系统架构模块解析
  16. html 转换 pdf 工具
  17. Struts2第一天课堂笔记
  18. linux版锐捷认证客户端,Linux/UNIX锐捷802.1x网络的认证客户端:RuijieClient 0.7发布
  19. 定时任务Quartz基础
  20. 2022款联想小新Pro16,联想小新air15,thinkbook16+选哪个好

热门文章

  1. 动态规划在求解背包问题中的应用(JAVA)--回溯法、记忆化法
  2. extjs展示列表,显示来很多空白行,但是数据没显示
  3. Hibernate 语句总结
  4. 开发黑名单功能demo_中台实践:通用化黑名单平台
  5. oracle rac实例切换,RAC+单实例DG的切换
  6. python 扫描仪_玩《Minecraft我的世界》学python编程,可领|取电子学习版本
  7. java flatmap_Java 8 Steam API map和flatMap方法使用详解
  8. python math库函数源码_11. math库函数
  9. 在python语言中不能作为变量名的是什么_4、 在 Python 中可以使用 if 作为变量名。 (1.0分)_学小易找答案...
  10. 深度优化LNMP之Nginx [1]