zoukankan      html  css  js  c++  java
  • 事务(Transaction)的特性

    事务管理

    事务(Transaction):
    1、构成单一逻辑工作单元的操作集合
    DBMS中的用户程序
    DBMS外的可执行程序
    对数据库的读/写操作序列
    2、读
    从数据库中读取数据,首先从磁盘中读到内存(Buffer Pool),然后赋给变量。
    3、写
    先完成内存中的数据复制,然后写入磁盘。

    事务的特性-ACID:
    原子性(Atomicity)
    一致性(Consistency)
    隔离性(Isolation)
    持久性(Durability)

    事务的特性-原子性:
    事务中的操作,要么全做成,要么都不做
    事务是不可拆分的
    事务必须以 Commit/Rollback 结束

    事务的特性-一致性:
    单独运行的事务,必须保证保持数据库的一致状态
    从一个一致状态迁移到另一个一致状态
    与原子性相关

    事务的特性-隔离性:
    多个并发事务之间不能相互干扰
    并发不影响事务的执行

    事务的特性-持久性:
    一旦事务成功完成(Commit),它对数据库的更新应该是持久的
    即使在写入磁盘之前,系统发生故障
    在下次启动之后,也应保障数据更新的有效

    事务及事务管理器:
    恢复和并发控制是事务管理的重要组成部分
    恢复管理部件负责保证事务的原子性与持久性
    并发控制部件负责事务的并发控制机制,实现事务的隔离性与一致性
    事务管理器实现事务的ACID

    事务的提交与回滚:
    提交( Commit
    通知事务管理器一个逻辑工作单元已完成,所做的更新操作可以被提交或永久保留
    表明事务成功地结束
    执行有效性检验
    回滚( RollBack)
    通知事务管理器事务未能正常完成,数据库可能处于不一致状态,当前事务所做的所有更新操作必须撤消
    表明事务不成功地结束

    事务的状态:
    活动状态(Active),初始状态,事务正在执行时处于此状态
    部分提交状态,事务的最后一条语句被执行后
    失败状态,发现正常的操作不能继续后
    中止状态,事务回滚且数据库已恢复到事务开始时的状态
    重启事务——不是由于内部逻辑错误导致的故障
    杀死事务
    提交状态,事务成功完成

    事务的并发:
    多个事务可能同时(交叉地)在系统中运行
    提高处理器、磁盘的利用率
    减少等待时间
    多个事务并发运行,由事务管理器进行调度
    可串行化调度
    并发运行的结果,与事务按某一顺序串行运行的结果等同

    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jxcjxinxing/archive/2006/12/16/1445799.aspx

  • 相关阅读:
    WPF动态加载3D 放大-旋转-平移
    WPF窗口继承实现统一风格的自定义窗口
    桌面程序的其他实现方式----使用WPF窗体展现网页
    WPF 中自定义控件及其使用
    flask系列三之Jinja2模板
    Python模块学习
    利用Flask-SQLAlchemy提供的paginate()方法实现博客文章的分页显示
    Python利用flask sqlalchemy实现分页效果
    sqlalchemy和flask-sqlalchemy几种分页操作
    Python SQLAlchemy ORM示例
  • 原文地址:https://www.cnblogs.com/sunwei2012/p/1680815.html
Copyright © 2011-2022 走看看