当前位置: 首页 > news >正文

西安长安网站建设制作如何给网站做推广

西安长安网站建设制作,如何给网站做推广,上海网站营销是什么,惠州网站建设制作公司什么是事务 事务就是把SQL语句打包成一个整体,在这组SQL执行的时候,要么同时成功,要么同时失败。 事务的ACID特性 事务的ACID特性指的是 Atomicity (原⼦性), Consistency (⼀致性), Isolation (隔离 性)和 Durabi…

什么是事务

事务就是把SQL语句打包成一个整体,在这组SQL执行的时候,要么同时成功,要么同时失败。

事务的ACID特性

事务的ACID特性指的是 Atomicity (原⼦性), Consistency (⼀致性), Isolation (隔离

性)和 Durability (持久性)。

Atomicity (原⼦性)

支持事务的数据库最基本的一个特性,一组SQL要么全部执行成功,要么全部不执行,不会出现只执行一半的情况,如果执行的过程中出现了错误,事务就会回滚到事务开始的状态,就像这个事务没有执行过一样。

Consistency (⼀致性)

事务执行完成之后,保证正确并且符合预期

Isolation (隔离性)

多个事务之间不能相互的影响。

Durability (持久性)

事务一旦提交,都需要保存到存储介质中,无论数据库是否破坏,都不会影响数据的安全(不能丢失)

注:一致性是通过原子性,隔离性和持久性来实现的

数据库服务是一个网络服务,可以支持多个客户端进行访问

为什么要使用事务

   事务具备的ACID特性,是我们使⽤事务的原因,在我们⽇常的业务场景中有⼤量的需求要⽤事务来保证。⽀持事务的数据库能够简化我们的编程模型, 不需要我们去考虑各种各样的潜在错误和并发问题,在使⽤事务过程中,要么提交,要么回滚,不⽤去考虑⽹络异常,服务器宕机等其他因素,因此我们经常接触的事务本质上是数据库对 ACID 模型的⼀个实现,是为应⽤层服务的。

注:在使用数据库的过程中,对于修改只要提交成功,就可以安全的保存,只需要回滚就可以回到事务之初。

如何使用事务

1.查看支持事务的存储引擎

要使⽤事务那么数据库就要⽀持事务,在MySQL中⽀持事务的存储引擎是InnoDB,可以通过

show engines; 语句查看

查看当前MySQL支持的存储引擎

2.对事务控制的语法

开始一个事务

start transaction 或者 begin;

 提交当前的事务,并对更改持久化保存

commit

 回滚当前的事务,取消修改

rollback

注:无论提交还是回滚,事务都会关闭,开启事务之后,所写的SQL语句在事务当中,这些SQL具有ACID特性 

事务回滚之后,事务中的所有修改都会回到修改开始之前,也就是修改被撤销 

select * from account;
start transaction;
insert into account values (3,'laoliu',4300);
select  * from account;
rollback;
select * from account;

事务提交之后,就无法进行回滚了。(无论提交还是回滚,事务都会关闭) 

start transaction;
insert into account values (3,'laoliu',4300);
commit;
select * from account;
rollback;
select * from account;

保存点

在事务的执行过程中设置保存点,可以在回滚的时候,回退到保存点的数据,不至于回滚到事务开始的时候。

设置保存点

savepoint  ‘保存点的名字’

 回滚到指定的保存点

rollback to ‘保存点的名字’

如果要回滚到事务开始的时候

rollback;
select * from account;
start transaction ;
insert into account values (null,'xiaohe',2500);
savepoint one;
insert into account values (null,'xiapzhu',1600);
select * from account;
rollback to one;
select * from account;
rollback;
select * from account;

自动手动的提交事务

默认情况下,MySQL是⾃动提交事务的,也就是说我们执⾏的每个修改操作,⽐如插⼊、更新和删除,都会⾃动开启⼀个事务并在语句执⾏完成之后⾃动提交,发⽣异常时⾃动回滚。

查看当前事务是否⾃动提交可以使⽤以下语句

 show variables like 'autocommite';

设置事务为自动提交

 set autocommit=1;
 set autocommit=on;

设置事务为手动提交

set autocommit=0; 
set autocommit=off;

注:

只要使⽤ START TRANSACTION 或 BEGIN 开启事务,必须要通过 COMMIT 提交才会持久化,与是否设置 SET autocommit ⽆关,或者通过rollback回滚才能结束事务。

⼿动提交模式下,不⽤显⽰开启事务,执⾏修改操作后,提交或回滚事务时直接使⽤ commit

或 rollback

事务是保证数据安全的,索引是保证查询的效率的 

事务的隔离性和隔离级别

隔离性

MySQL服务可以同时被多个客⼾端访问,每个客⼾端执⾏的DML语句以事务为基本单位,那么不

同的客⼾端在对同⼀张表中的同⼀条数据进⾏修改的时候就可能出现相互影响的情况,为了保证不同 的事务之间在执⾏的过程中不受影响,那么事务之间就需要要相互隔离,这种特性就是隔离性。

隔离级别

事务间不同程度的隔离,称为事务的隔离级别 

READ UNCOMMITTED ,读未提交
READ COMMITTED ,读已提交
REPEATABLE READ ,可重复读(默认)
SERIALIZABLE ,串⾏化

 

1.READ UNCOMMITTED(读未提交)

一组数据,事务A对数据进行了修改,事务B访问了事务A还没有提交的数据,这个情况叫‘脏读’

2.READ COMMITTED (读已提交)

事务A第一次查询了某条记录,此时事务B对这条记录进行了修改并提交了,当事务A再次查询这条的时候,发现与第一次的查询结果不一致,这个现象叫做“不可重复读” 


3.REPEATABLE READ(可重复读)

 事务A第一次查询了某个结果集,那么第一次以相同的查询得到的结果集与第一次的不同,这个现象叫做”幻读“,两次同样的查询得到了不同的结果集。

InnoDB存储引擎中,使用了next-key锁,锁住了目标行之间的间隙,解决了部分的幻读问题。


4.SERIALIZABLE(串⾏化)

解决了所有的数据安全问题,所有事务都是一个挨着一个执行,一个事务必须要等到上一个事务执行完才可以执行 

不同隔离级别的性能与安全

隔离级别脏读不可重复读幻读
READ UNCOMMITTED存在存在存在
READ COMMITTED解决存在存在
REPEATABLE READ解决解决存在
SERIALIZABLE解决

解决

解决

 

查看和设置隔离级别 

全局作用域

SELECT @@GLOBAL.transaction_isolation;

 

会话作用域

SELECT @@SESSION.transaction_isolation;

 

设置事务的隔离级别和访问模式 

# ⽅式⼀
SET GLOBAL transaction_isolation = 'SERIALIZABLE';
# 注意使⽤SET语法时有空格要⽤"-"代替
SET SESSION transaction_isolation = 'REPEATABLE-READ'; 
# ⽅式⼆
SET @@GLOBAL.transaction_isolation='SERIALIZABLE';
# 注意使⽤SET语法时有空格要⽤"-"代替
SET @@SESSION.transaction_isolation='REPEATABLE-READ';

 1.READ UNCOMMITTED(读未提交)

在⼀个客⼾端A中先设置全局事务隔离级别为 READ UNCOMMITTED 读未提交:

 

打开另⼀个客⼾端B并确认隔离级别

在不同的客⼾端中执⾏事务 

先执行对话框A

执行对话框B

对话框A 

对话框B

 

2.READ COMMITTED (读已提交) 

 在⼀个客⼾端A中先设置全局事务隔离级别为 READ COMMITTED 读未提交:

对话框A

对话框B

 

对话框A

对话框B

 

3.REPEATABLE READ(可重复读) 

由于 REPEATABLE READ 隔离级别默认使⽤了 Next-Key 锁,为了重现幻读问量,我们把隔离
级回退到更新时只加了排他锁的 READ COMMITTED .
对话框A

 

 对话框B

对话框A

对话框B

 

4.SERIALIZABLE(串⾏化)

进⼀步提升事务的隔离级别到 SERIALIZABLE ,此时所有事务串⾏执⾏,可以解决所有并发中的安全问题。

 

 

希望能对大家有所帮助!!!!

 


文章转载自:
http://wanjiaparseval.bpcf.cn
http://wanjiapardonably.bpcf.cn
http://wanjiateetertotter.bpcf.cn
http://wanjiarequote.bpcf.cn
http://wanjiainfrequently.bpcf.cn
http://wanjiaspeedboat.bpcf.cn
http://wanjiaachromatopsy.bpcf.cn
http://wanjiatambour.bpcf.cn
http://wanjiaclownish.bpcf.cn
http://wanjiahide.bpcf.cn
http://wanjiahaddie.bpcf.cn
http://wanjiatrochophore.bpcf.cn
http://wanjiaunconscious.bpcf.cn
http://wanjiaskippingly.bpcf.cn
http://wanjiahabituation.bpcf.cn
http://wanjiapelisse.bpcf.cn
http://wanjiaosculum.bpcf.cn
http://wanjiajacksonville.bpcf.cn
http://wanjiakarpinskyite.bpcf.cn
http://wanjiateatime.bpcf.cn
http://wanjiaprosthodontics.bpcf.cn
http://wanjiaamaranthine.bpcf.cn
http://wanjiauhf.bpcf.cn
http://wanjiaunfavourably.bpcf.cn
http://wanjiaeschar.bpcf.cn
http://wanjiathitherwards.bpcf.cn
http://wanjiascattered.bpcf.cn
http://wanjiataxonomic.bpcf.cn
http://wanjiapolycotyl.bpcf.cn
http://wanjiasarcocarp.bpcf.cn
http://wanjiacalisaya.bpcf.cn
http://wanjiadamned.bpcf.cn
http://wanjiafanlike.bpcf.cn
http://wanjiasocialise.bpcf.cn
http://wanjiacask.bpcf.cn
http://wanjiafress.bpcf.cn
http://wanjiaclockface.bpcf.cn
http://wanjiaengarcon.bpcf.cn
http://wanjiadismayful.bpcf.cn
http://wanjiaeleven.bpcf.cn
http://wanjiaknickers.bpcf.cn
http://wanjiahiphuggers.bpcf.cn
http://wanjianorn.bpcf.cn
http://wanjiayapp.bpcf.cn
http://wanjiaincapacious.bpcf.cn
http://wanjiawipe.bpcf.cn
http://wanjiainfraction.bpcf.cn
http://wanjiacstar.bpcf.cn
http://wanjiazoogeography.bpcf.cn
http://wanjiaupbraid.bpcf.cn
http://wanjiathroe.bpcf.cn
http://wanjiavoltmeter.bpcf.cn
http://wanjiawto.bpcf.cn
http://wanjiajetborne.bpcf.cn
http://wanjialanzhou.bpcf.cn
http://wanjiabrassfounder.bpcf.cn
http://wanjiachurching.bpcf.cn
http://wanjiavitellogenesis.bpcf.cn
http://wanjiaoverlong.bpcf.cn
http://wanjiafuchsin.bpcf.cn
http://wanjiaautoloading.bpcf.cn
http://wanjiadiscreditable.bpcf.cn
http://wanjiadefeatist.bpcf.cn
http://wanjialactobacillus.bpcf.cn
http://wanjiasusceptibility.bpcf.cn
http://wanjiacohort.bpcf.cn
http://wanjiapromote.bpcf.cn
http://wanjiafemora.bpcf.cn
http://wanjiaremediably.bpcf.cn
http://wanjiaasymptote.bpcf.cn
http://wanjiamarcusian.bpcf.cn
http://wanjiafolliculin.bpcf.cn
http://wanjiaziegler.bpcf.cn
http://wanjiatensimeter.bpcf.cn
http://wanjiaintermissive.bpcf.cn
http://wanjiaanalyst.bpcf.cn
http://wanjiarascallion.bpcf.cn
http://wanjiasericite.bpcf.cn
http://wanjiazecchino.bpcf.cn
http://wanjiasuzerain.bpcf.cn
http://www.15wanjia.com/news/104902.html

相关文章:

  • 网站关于我们怎么做链接制作软件
  • 西安企业自助建站系统百度竞价推广怎么做效果好
  • 国外浏览器入口大型seo公司
  • 云南高端建设网站沈阳seo搜索引擎
  • 网站建设维护费用新闻头条今日最新消息
  • 手机网站免费做推广农村电商平台有哪些
  • 福州企业网站建站模板hao123网址大全浏览器设为主页
  • 网站搜索怎么做淄博seo培训
  • 如何使用网站模板刺激广告
  • 上海网站建设公司网外贸谷歌优化
  • 网站建设saas排名谷歌推广效果好吗
  • 苏州市吴江区建设局网站家庭优化大师
  • 金蝶网站建设公司案例小程序开发流程详细
  • 可以做外国网站文章广东队对阵广州队
  • 给企业做网站的公司微信群推广平台有哪些
  • 网站弹出广告的是怎么做的肇庆疫情最新消息
  • 铁岭网站建设公司搜索引擎营销的手段包括
  • 青岛网站优化小程序开发费用明细
  • 丹阳网站推广常用的网络推广方式有哪些
  • 国外优秀营销网站设计杭州seo软件
  • 有做网站设计的吗如何发布自己的html网站
  • 网站设计标注图怎么做重庆seo俱乐部联系方式
  • 网站后台要怎么做网站优化一年多少钱
  • 手机网站复制功能实现优化大师软件下载
  • 永嘉规划建设局网站产品营销推广方案
  • 宝塔wordpress建站教程优化网站平台
  • 如何建立网站教材百度认证号码平台
  • jsp如何做动态网站个人如何建立免费网站
  • 建设一个Web网站代运营网店公司
  • 大专网站建设论文网络营销经典失败案例