2024022402-数据库恢复技术

数据库恢复技术

什么是事务

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

事务和程序是两个概念

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

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

事务结束

COMMIT

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

ROLLBACK

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

事务的特性(ACID特性)

原子性(Atomicity)

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

一致性(Consistency)

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

隔离性(Isolation)

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

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

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

持续性(Durability )

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

故障

故障原因

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

故障的影响

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

故障的种类

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

恢复操作的基本原理

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

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

恢复的实现技术

数据转储(backup)

登录日志文件(logging)

XMind: ZEN - Trial Version

相关推荐
两点王爷3 小时前
PostgreSQL 常用 SQL 语句与 GIS 相关函数详解
数据库·后端
两点王爷3 小时前
PostgreSQL 好用又独特的特性与空间函数
数据库
梦帮科技3 小时前
AI 音乐产品的发布工程:验证门、数据发布、回滚与生产运维纪律
数据结构·数据库·架构·node.js·音视频·动态规划·推荐算法
TDengine (老段)5 小时前
TDengine 常见问题 TOP3
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
Lucifer三思而后行7 小时前
Oracle SQL 优化实战:明明走了索引,SQL 还是慢?
sql·oracle
螺蛳粉 螺蛳粉8 小时前
MySQL 分布式集群系列 · 第五篇——全方位对比:NDB、MGR、主从复制、分库分表怎么选?
数据库·分布式·mysql
这个DBA有点耶11 小时前
从OLTP到OLAP到HTAP:数据库负载分类的技术演进与选型指南
数据库·mysql·架构
YangYang9YangYan13 小时前
商业数据分析校招项目怎么选,附项目设计与简历包装思路
大数据·数据库·数据分析
李白客13 小时前
数据库培训怎么选?零基础到DBA的学习路线与机构认证对比(2026)
数据库·学习
shark-chili14 小时前
关于AI辅助编程的认知
数据库·人工智能·redis·macos·缓存