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获取所有分类的前N条记录
May 07 MySQL
mysql 8.0.24版本安装配置方法图文教程
May 12 MySQL
详解MySQL集群搭建
May 26 MySQL
MySQL数据库中varchar类型的数字比较大小的方法
Nov 17 MySQL
一条慢SQL语句引发的改造之路
Mar 16 MySQL
mysql的单列多值存储实例详解
Apr 05 MySQL
MySQL数据库优化之通过索引解决SQL性能问题
Apr 10 MySQL
MySql重置root密码 --skip-grant-tables
Apr 11 MySQL
MySQL分区路径子分区再分区
Apr 13 MySQL
MySQ InnoDB和MyISAM存储引擎介绍
Apr 26 MySQL
MySQL查询日期时间
May 15 MySQL
Mysql如何查看是否使用到索引
Dec 24 MySQL
mysql事务隔离级别详情
mysql主从复制的实现步骤
记一次Mysql不走日期字段索引的原因小结
Oct 24 #MySQL
Mysql关于数据库是否应该使用外键约束详解说明
Oct 24 #MySQL
MySQL七种JOIN类型小结
MySQL中的引号和反引号的区别与用法详解
SQL实战演练之网上商城数据库商品类别数据操作
Oct 24 #MySQL
You might like
兼容PHP5的PHP目录管理函数库
2008/07/10 PHP
php启用zlib压缩文件的配置方法
2013/06/12 PHP
在Nginx上部署ThinkPHP项目教程
2015/02/02 PHP
php采集中国代理服务器网的方法
2015/06/16 PHP
PHP用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID
2016/11/25 PHP
详解PHP中的 input属性(隐藏 只读 限制)
2017/08/14 PHP
js no-repeat写法 背景不重复
2009/03/18 Javascript
验证控件与Button的OnClientClick事件详细解析
2013/12/04 Javascript
jQuery中事件对象e的事件冒泡用法示例介绍
2014/04/25 Javascript
基于jQuery实现音乐播放试听列表
2016/04/14 Javascript
基于JS代码实现导航条弹出式悬浮菜单
2016/06/17 Javascript
Node.js中如何合并两个复杂对象详解
2016/12/31 Javascript
微信小程序多张图片上传功能
2017/06/07 Javascript
Node.js学习之地址解析模块URL的使用详解
2017/09/28 Javascript
谈一谈vue请求数据放在created好还是mounted里好
2020/07/27 Javascript
[01:24]2014DOTA2 TI第二日 YYF表示这届谁赢都有可能
2014/07/11 DOTA
python 图片验证码代码分享
2012/07/04 Python
Python使用scrapy抓取网站sitemap信息的方法
2015/04/08 Python
python实现文件快照加密保护的方法
2015/06/30 Python
Python中字符串的格式化方法小结
2016/05/03 Python
python pygame模块编写飞机大战
2018/11/20 Python
python+selenium实现自动抢票功能实例代码
2018/11/23 Python
python导入模块交叉引用的方法
2019/01/19 Python
Python+AutoIt实现界面工具开发过程详解
2019/08/07 Python
python 命令行传入参数实现解析
2019/08/30 Python
Tensorflow不支持AVX2指令集的解决方法
2020/02/03 Python
keras 实现轻量级网络ShuffleNet教程
2020/06/19 Python
使用python-cv2实现Harr+Adaboost人脸识别的示例
2020/10/27 Python
法国高保真音响和家庭影院商店:Son Video
2019/04/26 全球购物
什么是Linux虚拟文件系统VFS
2012/01/31 面试题
道德之星事迹材料
2014/05/03 职场文书
四风对照检查材料思想汇报
2014/09/20 职场文书
2014年生活老师工作总结
2014/12/23 职场文书
公司经营目标责任书
2015/01/29 职场文书
中国古代史学名著《战国策》概述
2019/08/09 职场文书
基于python定位棋子位置及识别棋子颜色
2021/07/26 Python