首页 > 其他分享 >事务流程与介质恢复

事务流程与介质恢复

时间:2022-08-30 00:55:35浏览次数:58  
标签:事务 -- 流程 介质 写入 缓冲区 日志 数据 重做

事务生命周期 -->获取排他锁 -->重做数据存入PGA(进程程序的全局区) -->获取复制锁和重做分配锁 -->获取重做日志分配空间 -->释放重做分配锁 -->重做日志缓冲区同步重做日志 -->释放重做复制锁 -->LGWR将重做日志缓冲区写入磁盘(注意:数据没有写入磁盘) -->LGWR将重做日志缓冲区写入ORL(注意:事务写入磁盘但未提交) -->到检查点时间,数据库缓冲区写入磁盘   在DBWR进程将数据库缓冲区写入磁盘前,LGWR进程必须将重做缓冲区写入磁盘。这个顺序由写前日志记录协议强制执行,协议要求:未记录到重做日志中的更改不能写入数据文件,该协议可保证:事务提交前如果出现故障可以撤销事务 事务提交时会分配一个SCN,并经历上述事务流程,commit是一个事务的结束   写后日志记录 写前日志记录的唯一例外是使用直接路径写入:直接路径加载或执行create table as select...语句 这些事务不是来自缓冲区,需要使用写后日志记录协议。但会生成重做数据,可以恢复 当移动高水位线的重做数据提交后,可以看到数据 在执行直接路径写入操作时可结合UNRECOVERABLE选项,实现无日志的需求。 缺陷 使用UNRECOVERABLE选项不会为事务生成重做数据,但会伟数据库字典表生成重做数据,并生成少量数据用于定义无效范围(开始快地址、SCN) 虽然这样有利于加载大量数据,但在dg环境有缺陷:当介质恢复遇到无效范围数据时,由于没有重做数据,数据块被标为soft-corrupt。备库会报错,如果执行介质恢复,主库会报相同错误 0 解决方案 主库:对UNRECOVERABLE模式加载的表空间文件进行查询 0 备库:检查无日志操作,如检测到可以执行托管恢复 0 托管恢复 备库 方式                  命令 -->停止重做数据            recover managed standby database cancel -->对受影响的无日志文件脱机操作    alter database datafile 数据文件名 offline drop -->重新应用重做数据          recover managed standby database disconnect   主库 -->用RMAN备份受影响的数据文件 -->停止应用重做数据          recover managed standby database cancel -->对脱机的数据文件重新联机      alter database datafile 数据文件名 online -->重新应用重做数据          recover managed standby database disconnect

标签:事务,--,流程,介质,写入,缓冲区,日志,数据,重做
From: https://www.cnblogs.com/lijin543/p/16637923.html

相关文章

  • .NET 开源工作流: Slickflow流程引擎高级开发(十) -- BpmnJS流程设计器集成
    前言:在Slickflow产品开发过程中,前端流程设计器经历了几个不同的版本(jsPlumb,mxGraph等),目的是为了在设计流程时的用户体验更加良好,得到客户的好评和认可。BpmnJS流程设......
  • MySQL PXC集群大事务提交超限
    研发人员在测试大事务提交时遇见了错误:Goterror5-'Transactionsizeexceedsetthreshold'duringCOMMIT测试了几次都是1200S的时候停止的,不过在注释掉特定步骤后,......
  • shell-流程控制
    流程控制执行脚本case语法case实例......
  • ARMv8 reboot 流程
    LinuxrebootprocessforARM-v8is: RebootcommandfinallygoestotheATF.(Armtrustedfirmware).Sequence:machine_restart("arch/arm64/kernel/process.c")......
  • Django使用Redis进行缓存详细流程
    1.背景和意义服务器数据非经常更新。若每次都从硬盘读取一次,浪费服务器资源、拖慢响应速度。而且数据更新频率较高,服务器负担比较大。若保存到数据库,还需要额外建立一张对......
  • AXI事务ID与outstanding/out of oreder/interleaving实现关系
    AXI事务ID与outstanding/outoforeder/interleaving实现关系前言众所周知,AXI3/AXI4支持outstanding/outoforder/interleaving的特性,但是这一特性是根据AXI哪一路实现......
  • 业务流程可视化-让你的流程图"Run"起来(7.运行状态持久化&轻量工作流支持)
    前言感谢大家阅读本项目系列文章和对项目的支持。分享一下我对这个项目的新的改进。之前项目做到了流程设计可视化和流程运行结果可视化。本期发布的版本中实现了中间的......
  • 【DB】事务及ACID
    一、事务事务是指:由一系列数据库操作组成的一个完整的逻辑过程。例如银行转帐,从原账户扣除金额,以及向目标账户添加金额,这两个数据库操作的总和,构成一个完整的逻辑过程,不可......
  • 塘下摩托车驾校流程记录
      一、报名我是21年8月15拿的c1驾照,22年8月28到塘下摩托车考场去报名,一开始百度导航错了,导航到汀田车管所对面了,打电话问才知道,那里只是一个报名处,周末不开门的,后......
  • 操作系统启动流程和BIOS介绍
    1.BIOS介绍我们刚刚买回来的电脑裸机是可以直接启动的,这是由于生产厂商在电脑出厂的时候就在电脑里编写了一个只可读的系统功能BIOS,该系统被写入了ROM(只读内存中)BIOS是一......