我们为什么要使用数据库的事务呢?使用事务有什么缺点呢?

使用原因:保持数据的匹配和一致性。缺点: 并发操作中过度使用事务影响性能,因为事务用到了锁技术。

我是李福春,今天我们来复习一下事务的特性。你可以收获下图中的知识点。

下面我们发散一下。

事务特性

原子性: 要么全部成功要么全部失败一致性: 保证事务的前后一致性 隔离性:事物之间的执行不能互相干扰 持久性: 事务终结的标志,内存的数据持久化到硬盘中

并发场景下事务出现的问题

脏读:

不可重复读

幻读:

依赖id的自增做为依据。

隔离级别

读未提交 隔离度最弱 脏读 不可重复度 幻读

读已提交 不可重复度 幻读

可重复读 数据库默认 幻读

可串行化 性能最低 没有问题

innodb mvcc 不能解决幻读

如何跟合理的使用事务

没有数据一致性要求场景

不使用事务

只有查询的场景:

不需要使用事务

更新记录表,然后更新统计表

不要使用事务, 使用事务触发或者定时任务;

内容繁杂的大事务

分拆成各种小事务,各种反向操作辅助

事务对性能影响_mysql之事务相关推荐

  1. 事务对性能影响_DRDS 柔性事务漫谈

    DRDS 是阿里云提供的一款分布式数据库产品,它的原型是在阿里内部使用了 10 年的数据库中间件 TDDL.DRDS 在 TDDL 提供的数据切分和 SQL 路由能力上,强化了分布式查询,事务和水平扩 ...

  2. 事务对性能影响_MySQL数据库性能优化史诗级大总结

    点击上方蓝色字体,选择"设为星标" 回复"资源"获取更多资源 大数据技术与架构点击右侧关注,大数据开发领域最强公众号! 大数据真好玩点击右侧关注,大数据真好玩! ...

  3. 事务对性能影响_不是事务的事务!(分布式事务系列-完结篇)

    虽然我们都把最大努力通知型作为分布式事务的一种,但是各位同学心里要明白,这个完完全全和事务没有任何关系,为了确保我们这个分布式事务系列的完整性,我有必要用这篇最大努力通知型来做整个系列的收尾. 到现在 ...

  4. mysql 事务隔离详解_MySQL 中事务、事务隔离级别详解

    一.事务的概念 1.事务的概念 2.在mysql中哪些存储引擎(表类型)支持事务哪些不支持 3.事务的四个属性 4.mysql事务的创建与存在周期 5.mysql行为 6.事务的隔离性和性能 7.my ...

  5. 事务对性能影响_开启英特尔事务扩展技术(TSX),即可提升intel CPU 近40%性能

    在2019年5月份的时候,intel CPU在互联网上曝光了一个名为僵尸负载漏洞(ZombieLoad),而不法人员可利用该漏洞,恶意软件可以直接从CPU窃取敏感信息,而在最近,僵尸负载漏洞再一次被变 ...

  6. 数据库事务、分布式一致性和分布式事务

    文章目录 什么是事务 事务(ACID)的特性 对事务一致性的理解 分布式一致性 CAP BASE 分布式事务 本地事务 柔性事务和刚性事务 分布式一致性和分布式事务的理解 一致性协议 向量时钟 NWR ...

  7. mysql 事务 innodb 锁表_MySQL性能优化之Innodb事务系统,值得收藏

    概述 今天主要分享下Innodb事务系统的一些优化相关,以下基于mysql 5.7. Innodb中的事务.视图.多版本 1.事务 在Innodb中,每次开启一个事务时,都会为该session分配一个 ...

  8. mysql数据更新回退_MySQL 8 事务管理、数据库维护、改善性能

    1. 事务处理 并非所有引擎都支持事务处理.MyISAM和InnoDB是两种最常使用的引擎,前者不支持明确的事务处理管理,而后者支持. 事务处理可以用来维护数据库的完整性,它保证成批的MySQL操作要 ...

  9. postgresql 子查询_PostgreSQL子事务及性能分析

    作者介绍Laurenz Albe:Cybertec的高级顾问和支持工程师.自2006年以来,一直与PostgreSQL合作并为其做出贡献. 译者简介陈雁飞:开源PostgreSQL爱好者,一直从事Po ...

  10. mysql语句中事务可靠性_MySql的事务使用与示例详解

    在MySQL中,事务就是一个逻辑工作单元的一系列步骤.事务是用来保证数据操作的安全性. 事务的特征: 1.Atomicity(原子性) 2.Consistency(稳定性,一致性) 3.Isolati ...

最新文章

  1. 2021年必读的10 个计算机视觉论文总结
  2. 人本质要好,要善良,要真诚,有格局和胸怀,有能力,有眼光,能讲故事,能找到人,能搞到钱...
  3. 7万能驱动64位离线_Dism++离线安装.NET Framework 3.5教程
  4. 我对CSDN前10名的研究
  5. NSRunloop小总结
  6. Python内置模块和第三方模块
  7. 【db】mongodb的故事
  8. 动态顺序图可视化控件
  9. 【数据分析】Superset 之三 Docker操作管理
  10. 比特币区块链将分道扬镳、Libra苦难继续,2020区块链进入关键时期!
  11. 【java学习之路】(java SE篇)007.常用类
  12. B00001 C语言动态存储分配空间作为数组
  13. CI框架 -- 核心文件 之 Loader.php(加载器)
  14. uLua和toLua原理解析
  15. python文件夹排序笔记
  16. https双向加密认证
  17. MVC4 过滤器学习
  18. 详细揭秘微信小程序框架技术——Mpx
  19. pytorch应用之——纸币识别(一)
  20. UE4 Matinee的动画倒播

热门文章

  1. 5. 卷2(进程间通信)---Posiz 消息队列
  2. 22. Yii 组件属性
  3. 12.万无一失:网站的高可用架构
  4. PyMySQL和MySQLdb的区别
  5. Go Node.js 生成的exe公布成windows服务
  6. js里用append()和appendChild有什么区别?
  7. STM32寄存器操作端口模式SDA_OUT()/SDA_IN()
  8. keyset与entryset
  9. 深入进货单-期初单据
  10. 数据库 备份 压缩