当前位置: 首页 > article >正文

【赵渝强老师】Oracle的联机重做日志文件与数据写入过程

在这里插入图片描述

  在Oracle数据库中,一个数据库可以有多个联机重做日志文件,它记录了数据库的变化。例如,当Oracle数据库产生异常时,导致对数据的改变没有及时写入到数据文件中。这时Oracle数据库就会根据联机重做日志文件中的信息来获得数据库的变化信息,并根据这些信息把这些改变写到数据文件中。换句话来说,联机重做日志文件中记录的重做日志可以用来进行数据库实例的恢复。

  视频讲解如下:

Oracle的联机重做日志文件

【赵渝强老师】Oracle的联机重做日志文件

  在Oracle中可以通过下面的语句查看当前Oracle数据库中存在的联机重做日志文件和对应的日志组信息。

SQL> select member,group# from v$logfile;

# 输出的信息如下:
MEMBER			                                  GROUP#
------------------------------------------------ ----------
/u01/app/oracle/oradata/ORCL/redo03.log 		    3
/u01/app/oracle/oradata/ORCL/redo02.log 		    2
/u01/app/oracle/oradata/ORCL/redo01.log 		    1

注意:在Oracle数据库中,采用日志组的方式来管理联机重做日志。在默认情况下,Oracle数据库有3个重做日志组。Oracle推荐每一组中至少存在两个成员。

  下图展示了Oracle数据库写入数据的过程。
在这里插入图片描述

  视频讲解如下:

Oracle数据写入过程

【赵渝强老师】Oracle写入数据的过程

注意:从上图可以看出,当前客户端成功提交事务时,数据有可能还没有写到数据文件上。如果此时数据库实例发生了崩溃,写入的数据是会丢失的。当重新启动数据库实例时,Oracle会利用成功写入的重做日志来恢复实例在内存中的数据,这个过程叫做实例恢复。由Oracle数据库的SMON进程自动完成。


http://www.kler.cn/news/356159.html

相关文章:

  • 使用正则解决SQL注入问题
  • 对于六上前二单元的一些感想
  • [Hbase]一 HBase基础
  • 【论文速看】DL最新进展20241019-人脸识别、多模态
  • 使用Radzen Blazor组件库开发的基于ABP框架炫酷UI主题
  • vue el-drawer 标签点击蒙版就关闭的问题
  • Java基于SSM框架的教学辅助微信小程序【附源码、文档】
  • DS几大常见排序讲解和实现(上)(13)
  • MySQL 安装与配置详细教程
  • C语言预处理
  • 每日一题学习笔记——移动零
  • javaweb以html方式集成富文本编辑器TinyMce
  • Java生死簿管理小系统(简单实现)
  • ORA-12541: TNS: 无监听程序
  • 【python】Pycharm输出窗口自动换行问题
  • Systemd:systemctl 命令
  • 【尚跑】2024咸阳高新区半程马拉松赛141完赛,时隔一年终于pb,天时地利人和的结果
  • 金融信创基金行业案例:某基金公司AD信创替代方案建设分享
  • YOLO11改进 | 注意力机制 | 迈向高质量像素级回归的极化自注意力【全网独家】
  • 基于SpringBoot+Vue+uniapp微信小程序的宿舍报修系统的详细设计和实现