目录 一、事务特性 1.原子性 2.一致性 3.隔离性 4.持久性 二、并发问题 1.更新丢失 2.脏读 3.不可重复读 4.幻读 三、隔离级别 1.未提交读(read-uncommitted) 2.已提交读(read-committed) 3.可重复读(repetable-read) 4.可串行化 ...
分类:
数据库 时间:
2020-07-10 00:44:07
阅读次数:
85
众所周知MySQL从5.5.8开始,Innodb就是默认的存储引擎,Innodb最大的特点是:支持事务、支持行级锁。 既然支持事务,那么就会有处理并发事务带来的问题:更新丢失、脏读、不可重复读、幻读;相应的为了解决这四个问题, 就产生了事务隔离级别:未提交读(Read uncommitted),已提 ...
分类:
数据库 时间:
2020-06-06 21:48:19
阅读次数:
112
总览 MySQL事务隔离级别 read uncommitted 读取未提交的数据 read committed 读取提交的数据 repeatable read 可重复读 serializable 串行化 常见问题 更新丢失————事务A的操作被事务B覆盖 脏读————事务A读取了事务B已经修改但尚未 ...
分类:
数据库 时间:
2020-05-11 18:44:02
阅读次数:
73
一、事务概述二、事务的四大特性(ACID)三、事务的隔离性导致的问题四、数据库的四个隔离级别五、数据库中的锁机制:六、更新丢失七、并发事务所带来的的问题一、事务概述事务的概念:事务是指逻辑上的一组操作,这组操作要么同时完成要么同时不完成。假如小明要给小红转账1000元,这个转账会涉及到两个关键操作就... ...
分类:
数据库 时间:
2019-08-13 09:18:31
阅读次数:
101
悲观锁: 悲观锁悲观的认为每一次操作都会造成更新丢失问题,在每次查询时加上排他锁 每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。 ...
分类:
其他好文 时间:
2019-08-10 10:13:21
阅读次数:
99
(4.1)mysql备份还原——mysql常见故障 1、常见故障类型 在数据库环境中,常见故障类型: 语句失败,用户进程失败,用户错误 实例失败,介质故障,网络故障 其中最严重的故障主要是用户错误和介质故障。 2、具体故障情况 故障问题大致分为以下几类 【2.1】语句错误:单个数据库操作(选择、插入 ...
分类:
数据库 时间:
2019-04-08 09:14:05
阅读次数:
180
一、为什么需要锁(并发控制)? 在多用户环境中,在同一时间可能会有多个用户更新相同的记录,这会产生冲突。这就是著名的并发性问题。 典型的冲突有: 1.丢失更新:一个事务的更新覆盖了其它事务的更新结果,就是所谓的更新丢失。例如:用户A把值从6改为2,用户B把值从2改为6,则用户A丢失了他的更新。 2. ...
分类:
数据库 时间:
2019-03-14 18:24:36
阅读次数:
231
为什么需要锁(并发控制)? 在多用户环境中,在同一时间可能会有多个用户更新相同的记录,这会产生冲突。这就是著名的并发性问题。 典型的冲突有: 丢失更新:一个事务的更新覆盖了其它事务的更新结果,就是所谓的更新丢失。例如:用户A把值从6改为2,用户B把值从2改为6,则用户A丢失了他的更新。 脏读:当一个 ...
分类:
其他好文 时间:
2019-01-04 14:47:57
阅读次数:
176
一、引言 为什么需要锁(并发控制) 在并发的环境中,会存在多个用户同时更新同一条数据,这时就会产生冲突。 冲突结果: 丢失更新:一个事务的更新覆盖了其它事务的更新结果,就是所谓的更新丢失。 脏读:当一个事务读取其它完成一半事务的记录时,就会发生脏读取。 因此为了解决上述问题,引入了并发控制机制。 乐 ...
分类:
其他好文 时间:
2018-07-11 12:21:25
阅读次数:
166
引言 为什么需要锁(并发控制) 在多用户环境中,在同一时间可能会有多个用户更新相同的记录,这会产生冲突。这就是著名的并发性问题。 典型的冲突有: 丢失更新:一个事务的更新覆盖了其它事务的更新结果,就是所谓的更新丢失。例如:用户A把值从6改为2,用户B把值从2改为6,则用户A丢失了他的更新。 脏读:当 ...
分类:
其他好文 时间:
2018-05-04 17:03:52
阅读次数:
201