mysql事务对效率的影响分析总结


Posted in MySQL onOctober 24, 2021

1、数据库事务会降低数据库的性能。为了保证数据的一致性和隔离性,事务需要锁定事务。

2、如果其他事务需要操作这部分数据,必须等待最后一个事务结束(提交,回滚)。

实例

create table acct(
    acct_no varchar(32),
    acct_name varchar(32),
    balance decimal(16,2)
);
 
insert into acct values
    ('0001','Jerry', 1000),
    ('0002','Tom', 2000);
 
start transaction; -- 启动事务
update acct set balance = balance - 100 where acct_no = '0001'; -- 模拟扣款人
update acct set balance = balance + 100 where acct_no = '0002'; -- 模拟收款人
commit; -- 事务提交
rollback; -- 事务回滚

知识点扩展:

事务

  • 原子性:整个事务的所有操作要么全部提交成功,要么全部失败回滚
  • 一致性:指事务将数据库从一种一致性状态转换到另外一种一致性状态,在事务开始之前和事务结束后数据库中的完整性没有被破坏
  • 隔离性:要求一个事务对数据库中数据修改,在未提交完成前对其他事务是不可见的
  • 持久性:一旦事务提交,则其所做的修改就会永久保存到数据库中。此时即使系统崩溃,已经提交的修改数据也不会丢失。

大事务

运行时间比较长,操作的数据比较多的事务

  • 锁定太多的数据,造成大量的阻塞和锁超时
  • 回滚时所需时间比较长
  • 执行时间长,容易造成主从延迟

如何处理大事务:

  • 避免一次处理太多的数据
  • 移出不必要在事务中的select操作

到此这篇关于mysql事务对效率的影响分析总结的文章就介绍到这了,更多相关mysql事务对效率的影响内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
MySQL性能压力基准测试工具sysbench的使用简介
Apr 21 MySQL
MySQL主从搭建(多主一从)的实现思路与步骤
May 13 MySQL
MySQL为id选择合适的数据类型
Jun 07 MySQL
MySQL 百万级数据的4种查询优化方式
Jun 07 MySQL
MySQL配置主从服务器(一主多从)
Aug 07 MySQL
浅谈MySQL之select优化方案
Aug 07 MySQL
mysql函数全面总结
Nov 11 MySQL
mysql sum(if())和count(if())的用法说明
Jan 18 MySQL
MySQL安装失败的原因及解决步骤
Jun 14 MySQL
delete in子查询不走索引问题分析
Jul 07 MySQL
MySQL数据库查询之多表查询总结
Aug 05 MySQL
详解MySQL的内连接和外连接
May 08 MySQL
mysql事务隔离级别详情
mysql主从复制的实现步骤
记一次Mysql不走日期字段索引的原因小结
Oct 24 #MySQL
Mysql关于数据库是否应该使用外键约束详解说明
Oct 24 #MySQL
MySQL七种JOIN类型小结
MySQL中的引号和反引号的区别与用法详解
SQL实战演练之网上商城数据库商品类别数据操作
Oct 24 #MySQL
You might like
php下连接mssql2005的代码
2011/01/17 PHP
php中检查文件或目录是否存在的代码小结
2012/10/22 PHP
ThinkPHP多语言支持与多模板支持概述
2014/08/22 PHP
PHP面向对象程序设计子类扩展父类(子类重新载入父类)操作详解
2019/06/14 PHP
firefox下input type="file"的size是多大
2011/10/24 Javascript
JS动态调用方法名示例介绍
2013/12/18 Javascript
FireBug 调试JS入门教程 如何调试JS
2013/12/23 Javascript
jquery教程限制文本框只能输入数字和小数点示例分享
2014/01/13 Javascript
JavaScript组合拼接字符串的效率对比测试
2014/11/06 Javascript
JavaScript开发人员的10个关键习惯小结
2014/12/05 Javascript
jQuery实现统计输入文字个数的方法
2015/03/11 Javascript
JavaScript返回0-1之间随机数的方法
2015/04/06 Javascript
javascript实现网页字符定位的方法
2015/07/14 Javascript
jQuery实现日期联动效果实例
2016/07/26 Javascript
WEB 前端开发中防治重复提交的实现方法
2016/10/26 Javascript
JS实现加载和读取XML文件的方法详解
2017/04/24 Javascript
jQuery实现页码跳转式动态数据分页
2017/12/31 jQuery
Vue.JS实现垂直方向展开、收缩不定高度模块的JS组件
2018/06/19 Javascript
如何使用electron-builder及electron-updater给项目配置自动更新
2018/12/24 Javascript
JS数组方法reduce的用法实例分析
2020/03/03 Javascript
用tensorflow构建线性回归模型的示例代码
2018/03/05 Python
Python动态声明变量赋值代码实例
2019/12/30 Python
Selenium常见异常解析及解决方案示范
2020/04/10 Python
Python求解排列中的逆序数个数实例
2020/05/03 Python
Python基于正则表达式实现计算器功能
2020/07/13 Python
详解Python中import机制
2020/09/11 Python
Python脚本调试工具安装过程
2021/01/11 Python
欧迪办公美国官网:Office Depot
2016/08/22 全球购物
廉洁家庭事迹材料
2014/05/15 职场文书
应届生求职自荐信
2014/07/04 职场文书
人事局接收函
2015/01/30 职场文书
会计工作态度自我评价
2015/03/06 职场文书
2019年XX公司的晨会制度及流程!
2019/07/23 职场文书
七年级写作指导之游记作文
2019/10/07 职场文书
教你使用Jenkins集成Harbor自动发布镜像
2022/04/03 Servers
Java Spring Boot 正确读取配置文件中的属性的值
2022/04/20 Java/Android