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事务对效率的影响内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

更多相关文章

  1. Android开发效率—Eclipse快捷键
  2. 基于“ViewHolder”技术提升Android(安卓)ListView中Item View加
  3. [置顶] android 批量插入数据
  4. Android性能优化-SQLite数据库
  5. Android(安卓)NDK
  6. 我的android 第16天 - SQLite数据库
  7. ArrayMap是如何提高内存的使用效率的?
  8. 关于Android中SharedPreferences提交数据效率的调研
  9. KJFrameForAndroid(安卓)1.3beta 发布,Android高执行效率框架

随机推荐

  1. android studio3导入opencv4人脸识别例程
  2. android 语言简写对应表
  3. Android Animation --- 无限360度旋转
  4. Android(安卓)学习笔记-2011年7月
  5. 【置顶】Errors occurred during the bui
  6. android-------开发常用框架汇总
  7. android ping 网络延迟
  8. Android(安卓)SwitchButton(滑动开关)
  9. Android(安卓)DownloadManager 使用
  10. Android各版本代号、版本号、API/NDK级别