原文地址:https://zhuanlan.zhihu.com/p/150107974 一般对于我们的业务系统去访问数据库而言,它往往是多个线程并发执行多个事务的,对于数据库而言,它会有多个事务同时 ...
关于相关术语的专业解释,请自行百度了解,本文皆本人自己结合参考书和自己的理解所做的阐述,如有不严谨之处,还请多多指教。 事务有四种基本特性,叫ACID,它们分别是: Atomicity 原子性,Consistency 一致性,Isolation 隔离性,Durability 持久性。 接着关于ACID的理解和隔离性语法都是转的网上资料,大家可以顺便再了解熟悉下。 原子性 Atomicity :事务 ...
2018-12-18 10:33 0 904 推荐指数:
原文地址:https://zhuanlan.zhihu.com/p/150107974 一般对于我们的业务系统去访问数据库而言,它往往是多个线程并发执行多个事务的,对于数据库而言,它会有多个事务同时 ...
一、脏读(读到未提交的数据) 在理解脏读之前,需要理解脏数据的概念。 脏数据是指事务对缓冲池中行记录的修改,并且还没有提交。 注意脏数据和脏页是完全不同的两种概念,脏页指的是在缓冲池中已经被修改的页,但是还没有刷新到磁盘中,即数据库实例内存中的页和磁盘中的页的数据不一致。脏页的读取是非常正常 ...
刚开始写博客.. 写的太low。 1、数据库的两种读,每种读读的数据版本不一样,所以也称为MVCC,即多版本并发控制 a) 快照读 select * from where xxx 这种形式的都是快照读。 b) 当前读 update ...
事务的特性: 原子性:指处于同一个事务中的多条语句是不可分割的。 一致性:事务必须使数据库从一个一致性状态变换到另外一个一致性状态。比如转账,转账前两个账户余额之和为2k,转账之后也应该是 ...
一、缘由 众所周知MySQL从5.5.8开始,Innodb就是默认的存储引擎,Innodb最大的特点是:支持事务、支持行级锁。 既然支持事务,那么就会有处理并发事务带来的问题:更新丢失、脏读、不可重复读、幻读;相应的为了解决这四个问题, 就产生了事务隔离级别:未提交读(Read ...
最近,在一次 mysql 死锁的生产事故中,我发现,关于 mysql 的锁、事务等等,我所知道的东西太碎了,所以,我试着用几个例子将它们串起来。具体做法就是通过不断地问问题、回答问题,再加上“适当”的比喻,来逐步构建脑子里的“知识树”。 需要提醒一下,这篇博客并不适合小白,因为你需要先了解排它锁 ...
1. 什么是事务? 是数据库操作的最小工作单元,是作为单个逻辑工作单元执行的一系列操作;这些操作作为一个整体一起向系统提交,要么都执行、要么都不执行;事务是一组不可再分割的操作集合(工作逻辑单元); 2.事务的四大特性ACID 一个事务往往具有一下特性: 原子性 ...
锁问题 通过锁定机制可以实现事务的隔离性要求,使得事务可以并发地工作。锁提高了并发,但是却会带来潜在地问题。不过好在因为事务隔离性地要求。锁只会带来三种问题,如果可以防止这三种情况地发生,那将不会产生并发异常。 1、脏读 脏读(Dirty Read),首先理解一下脏数据地概念 ...