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 infobright的安装步骤
Apr 07 MySQL
MySQL update set 和 and的区别
May 08 MySQL
MySQL的安装与配置详细教程
Jun 26 MySQL
浅析MySQL如何实现事务隔离
Jun 26 MySQL
MySQL系列之十四 MySQL的高可用实现
Jul 02 MySQL
sql注入教程之类型以及提交注入
Aug 02 MySQL
SQL实现LeetCode(180.连续的数字)
Aug 04 MySQL
基于MySql验证的vsftpd虚拟用户
Nov 07 MySQL
JMeter对MySQL数据库进行压力测试的实现步骤
Jan 22 MySQL
MySql分区类型及创建分区的方法
Apr 13 MySQL
mysql 乱码 字符集latin1转UTF8
Apr 19 MySQL
Mysql表数据比较大情况下修改添加字段的方法实例
Jun 28 MySQL
mysql事务隔离级别详情
mysql主从复制的实现步骤
记一次Mysql不走日期字段索引的原因小结
Oct 24 #MySQL
Mysql关于数据库是否应该使用外键约束详解说明
Oct 24 #MySQL
MySQL七种JOIN类型小结
MySQL中的引号和反引号的区别与用法详解
SQL实战演练之网上商城数据库商品类别数据操作
Oct 24 #MySQL
You might like
Javascript与PHP验证用户输入URL地址是否正确
2014/10/09 PHP
PHP基于工厂模式实现的计算器实例
2015/07/16 PHP
PHP实现批量清空删除指定文件夹所有内容的方法
2017/05/30 PHP
List the UTC Time on a Computer
2007/06/11 Javascript
jquery禁用右键示例
2014/04/28 Javascript
javascript使用正则获取url上的某个参数
2014/09/04 Javascript
javascript实现图片上传前台页面
2015/08/18 Javascript
JavaScript中eval函数的问题
2016/01/31 Javascript
TinyMCE汉化及本地上传图片功能实例详解
2016/05/31 Javascript
老生常谈 js中this的指向
2016/06/30 Javascript
解析Javascript单例模式概念与实例
2016/12/05 Javascript
canvas绘制七巧板
2017/02/03 Javascript
基于JavaScript实现数码时钟效果
2020/03/30 Javascript
vue 自定义提示框(Toast)组件的实现代码
2018/08/17 Javascript
微信小程序签到功能
2018/10/31 Javascript
layui默认选中table的CheckBox复选框方法
2019/09/19 Javascript
JavaScript实现模态对话框实例
2020/01/13 Javascript
JsonServer安装及启动过程图解
2020/02/28 Javascript
three.js中多线程的使用及性能测试详解
2021/01/07 Javascript
python实现自动登录人人网并访问最近来访者实例
2014/09/26 Python
Python实现购物程序思路及代码
2017/07/24 Python
python中模块查找的原理与方法详解
2017/08/11 Python
Python提取支付宝和微信支付二维码的示例代码
2019/02/15 Python
深入了解和应用Python 装饰器 @decorator
2019/04/02 Python
python os模块简单应用示例
2019/05/23 Python
Python 用turtle实现用正方形画圆的例子
2019/11/21 Python
快速了解Python开发环境Spyder
2020/06/29 Python
python中pdb模块实例用法
2021/01/15 Python
阿迪达斯俄罗斯官方商城:adidas俄罗斯
2017/03/08 全球购物
Hotels.com泰国:酒店预订网站
2019/11/20 全球购物
作弊检讨书1000字
2014/02/01 职场文书
幼儿园教师培训方案
2014/02/04 职场文书
坚守艰苦奋斗精神坚决反对享乐主义整改措施
2014/09/17 职场文书
2014年房产销售工作总结
2014/12/08 职场文书
安全教育的主题班会
2015/08/13 职场文书
就业指导讲座心得体会
2016/01/15 职场文书