2024022402-数据库恢复技术

数据库恢复技术

什么是事务

事务(Transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位

事务和程序是两个概念

  • 在关系数据库中,一个事务可以是一条SQL语句,一组SQL语句或整个程序
  • 一个应用程序通常包含多个事务

事务是恢复和并发控制的基本单位

事务结束

COMMIT

  • 事务正常结束
  • 提交事务的所有操作(读+更新)
  • 事务中所有对数据库的更新永久生效

ROLLBACK

  • 事务异常终止
    • 事务运行的过程中发生了故障,不能继续执行
    • 回滚事务的所有更新操作
    • 事务滚回到开始时的状态

事务的特性(ACID特性)

原子性(Atomicity)

  • 事务是数据库的逻辑工作单位
  • 事务中包括的诸操作要么都做,要么都不做

一致性(Consistency)

  • 事务执行的结果必须是使数据库从一个 一致性状态变到另一个一致性状态
  • 一致性状态:
    • 数据库中只包含成功事务提交的结果
  • 不一致状态:
    • 数据库中包含失败事务的结果

隔离性(Isolation)

  • 对并发执行而言一个事务的执行不能被其他事务干扰

  • 一个事务内部的操作及使用的数据对其他并发事务是隔离的

  • 并发执行的各个事务之间不能互相干扰

持续性(Durability )

  • 持续性也称永久性(Permanence)
  • 一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。
  • 接下来的其他操作或故障不应该对其执行结果有任何影响。

故障

故障原因

  • 计算机硬件故障
  • 系统软件和应用软件的错误
  • 操作员的失误
  • 恶意的破坏

故障的影响

  • 运行事务非正常中断
  • 破坏数据库

故障的种类

  • 事务故障
  • 系统故障
  • 介质故障
  • 计算机病毒

恢复操作的基本原理

恢复操作的基本原理:冗余

利用存储在系统其它地方的冗余数据来重建数据库中已被破坏或不正确的那部分数据

恢复的实现技术

数据转储(backup)

登录日志文件(logging)

XMind: ZEN - Trial Version

相关推荐
欢呼的太阳5 小时前
数据库设计Step by Step (10)——范式化
服务器·数据库·oracle
喜欢的名字被抢了6 小时前
MySQL基础入门:从零理解数据库与SQL
数据库·mysql·教程
Elastic 中国社区官方博客7 小时前
如何比较两个 Elasticsearch 索引并找出缺失的文档
大数据·运维·数据库·elasticsearch·搜索引擎
DLYSB_8 小时前
生命通道:如何用 HIS 医疗系统直连网络声光终端,打造“零延误”的危急值响应网关?
java·网络·数据库·报警灯
儒雅的大叔8 小时前
MySQL数据库InnoDB数据恢复工具使用总结
数据库·mysql·adb
观远数据8 小时前
ChatBI选型对比:从意图识别到SQL修复,六个维度打分决定是否值得投产
数据库·人工智能·sql
嘉&年华8 小时前
【第008篇】通过dexp和dimp命令导出和导入dmp文件(适用于达梦数据库)
数据库·sql
哥是强混10 小时前
Means:基于 .NET 10 打造的开源自部署 S3 兼容对象存储服务
网络·数据库·.net
ffqws_10 小时前
redis面试:如何保证双写一致
数据库·redis·缓存
水无痕simon10 小时前
6 数据库同义词
数据库