美文网首页
数据库并发的控制

数据库并发的控制

作者: cefa6a30d1c3 | 来源:发表于2019-07-24 16:37 被阅读0次
  • 并发调度的可串行化
可串行化准则:
    多个事务的并发执行时正确的,当且仅当其结果按某一次序串行执行它们时的结果相同,这种调度策略称为可串行化调度。
    可串行化是并发事务正确性的准则,一个给定的并发调度,当且仅当它是可串行化的,才认为是正确的。
  • 封锁
    封锁是实现并发控制的非常重要的技术。
        封锁是指事务在对数据对象进行操作以前,先请求系统对其加锁,成功加锁之后该事务就对该数据对象有了控制权,只有该事务对其进行解锁之后,其他的事务才能更新它.
  • 锁的分类[排它锁,共享锁]
A: 排它锁(也称作X锁): 可读可写
        如果事务T在对某个数据对象实施了X锁,那么其他的事务必须要等到T事务结束对该数据对象的X锁之后,才能对这个数据进行加锁。

B: 共享锁(也称作S锁):只能进行读取工作
        如果事务T在对某个数据对象实施了S锁,那么其他的事务也能对该数据对象实施S锁,但是对这个数据对象施加的所有S锁都释放之前不允许任何事务对该数据对象实施X锁。
  • 封锁异常
问题描述: 封锁技术可以避免一些并发操作引起的不一致错误,但也会产生其他的一些问题,活锁和死锁。
    活锁: 如果某个事务处在永远等待的状态,得不到封锁的机会,这种现象为活锁,避免这种锁最好的方法就是采用先来先服务的策略。

    死锁: 两个或两个以上的事务都处于等待状态每个事务都在等待对方事务接触封锁,它才能继续执行下去,这样任何事务都处于等待状态而无法继续执行的现象称为死锁
    
解决方案: //大致有以下几类
        A、 死锁的预防
        B、 死锁的诊断与预防 //: 尽量别写这样的代码, 如果出现问题了, 只能手动修改源代码.              

相关文章

  • 你应该了解的MySQL锁分类

    MySQL中的锁 锁是为了解决并发环境下资源竞争的手段,其中乐观并发控制,悲观并发控制和多版本并发控制是数据库并发...

  • 一文理解Mysql MVCC

    MVCC 就是多版本并发控制。MVCC 是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问。 为...

  • 数据库的隔离级别和 MVCC

    MVCC (Multi-Version Concurrency Control),多版本并发控制。数据库实现并发访...

  • 一篇讲透如何理解数据库并发控制

    01数据库并发控制的作用 1.1 事务的概念 在介绍并发控制前,首先需要了解事务。数据库提供了增删改查等几种基础操...

  • 数据库并发控制技术总结

    1.数据库并发控制的作用 1.1 事务的概念 在介绍并发控制前,首先需要了解事务。数据库提供了增删改查等几种基础操...

  • 数据库的锁机制

    数据库的锁机制 并发控制 在计算机科学,特别是程序设计、操作系统、多处理机和数据库等领域,并发控制(Concurr...

  • Kubernetes并发控制和资源变更

    并发控制 并发控制指的是当多个用户同时更新运行时,用于保护数据库完整性的各种技术。并发机制不正确可能导致脏读、幻读...

  • 你真的懂MVCC吗?来手动实践一下?

    MVCC 是什么? 01 数据库并发控制——锁 Multiversion (version) concurrenc...

  • Mvcc 学习笔记

    MVCC 笔记 MVCC为了解决什么问题? 多版本并发控制,针对在并发访问数据库时对于数据版本的控制以及隔离性问题...

  • 一文详解分布式数据库并发控制

      并发控制是数据库系统实现的一个难点。本文分为三个部分对目前的分布式并发控制技术进行浅析。一、从用户并发访问可能...

网友评论

      本文标题:数据库并发的控制

      本文链接:https://www.haomeiwen.com/subject/qcffrctx.html