MySQL事务简述(六)

事务的统计主要是看TPS,它是Question Per Second的缩写,代表每秒处理事务的能力。

这里的事务包括提交和回滚的两种类型。不过无论是哪一种,只有显示声明的事务才会被统计。

公式:(com_commit+com_rollock)/time

 

ISO和ANIS SQL标准制定了4种事务隔离级别,它们是:

1.READ UNCOMMITTED 读取为提交数据

2.READ COMMITTED 读取已提交数据

3.REPEATABLE READ 可重复读

4.SERIALIZABLE 序列化

InnoDB存储过程默认支持的界别是REPEATABLE READ。特别提示一下,因为使用Next-Key Lock算法,避免了幻读问题。

在InnoDB存储过程中,2,3,4三个级别性能差别不大,有时候甚至SERIALIZABLE 比 REPEATABLE READ还要好些。

在MySQL配置文件中,[mysqld]中可以设置事务隔离级别,例如:

[mysqld]

transaction-isolation = READ-COMMITTED

 

SERIALIZABLE隔离级别通常用于分布式事务。

 

在大量插入数据时,采用显示开启事务,最后来一次性提交或回滚。

这样做比自动提交的好处在于,显示开启事务提交是只写一次重做日志,自动提交则是insert多少条,就会写多少次重做日志。如果此时插入100万条,两者差别就非常巨大了。

最后建议采取显示开启事务,这不仅仅因为性能差异,还因为显示开启事务可以避免一些错误。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乐大师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值