永乐国际app

欢迎光临永乐国际f66 com登陆!  地方分站: 无锡  南京  苏州  联系永乐国际f66 com登陆 返回永乐国际app 微信

无锡软件开发浅谈mysql事务四大特性介绍

发布者:永乐国际f66 com登陆 发布时间:2019-7-24 23:24:53 点击次数:56

无锡软件开发浅谈mysql事务四大特性

数据库事务特性:acid

a:原子性,一次操作要么都成功,要么都失败回滚。(atomicity)
c:一致性,数据执行前和执行后要保持一致。(consistency)[转账来说:比如一个账户事务执行前和是500,执行后要必须确保和是500]
i:隔离性,并发的多个事务之间相互隔离,互不干扰。(isolation)[事务a要么在事务b执行前执行或者执行后执行]提供好几种隔离级别
d:永久性,事务执行之后对数据库的改变是永久性的。(durability)
脏读:一个事务读取了另一个事务未提交的数据。
不可重复读:一个事务中多次读取同一个数据得到的结果不一致。(查询间隔中,其他事务改变数据提交了事务)
不可重复读和脏读的区别是,脏读是某一事务读取了另一个事务未提交的脏数据,而不可重复读则是读取了前一事务提交的数据。

幻读(虚读):是事务非独立执行过程中发生的。
比如事务a修改数据库中所有数据的name都为张三,事务b这个时候插入了一条新的数据name是李四并且提交了,
事务a的用户再去查数据发现还有一条(事务b添加的)没有更新,就像产生幻觉一样,就是发生了幻读。
幻读和不可重复读都是读取了另一条已经提交的事务(这点就脏读不同),所不同的是不可重复读查询的都是同一个数据项,而幻读针对的是一批数据整体(比如数据的个数)。
MySQL数据库为永乐国际f66 com登陆提供的四种隔离级别:

① Serializable (串行化):可避免脏读、不可重复读、幻读的发生。
② Repeatable read (可重复读):可避免脏读、不可重复读的发生。
③ Read committed (读已提交):可避免脏读的发生。
④ Read uncommitted (读未提交):最低级别,任何情况都无法保证。

以上四种隔离级别最高的是Serializable级别,最低的是Read uncommitted级别,当然级别越高,执行效率就越低。
像Serializable这样的级别,就是以锁表的方式(类似于Java多线程中的锁)使得其他的线程只能在锁外等待,所以平时选用何种隔离级别应该根据实际情况。在MySQL数据库中默认的隔离级别为Repeatable read (可重复读)。

在MySQL数据库中查看当前事务的隔离级别:
select @@tx_isolation;
在MySQL数据库中设置事务的隔离 级别:
set tx_isolation=’隔离级别名称;’
记住:设置数据库的隔离级别一定要是在开启事务之前!
本文章由无锡软件开发提供整理。

永乐国际f66 com登陆新闻

为什么企业偏向于无锡软件开发呢!

永乐国际app随着互联网的高速发展,软件应用成为企业的趋势,越来越多的企业……

浅谈无锡软件开发5大特权

软件开发的需求、匹配商家、评价工期、提供报价、一站式服务等!……

何为企业新闻推广?新闻推广的独特优势及

永乐国际app企业新闻推广就是把企业想传播的信息以新闻报道的方式传播出去。……

如何推广一个新的app?

1、应用市场的推广由于进入的时间比较早,用户积累比较多,有用……

无锡小程序开发技术员浅谈分销体系的特色

永乐国际app说起营销,无锡小程序开发小编就来劲了,因为永乐国际f66 com登陆专注小小程序开……

服务热线

180-6190-6084
友情链接
 @版权所有:  Copyright © 2017-2018