赞
踩
事务的特性(ACID):
事物的类型:
本地事务的优缺点:
本地事务的优点
本地事务的缺点
并发事务带来的问题:
不可重复读和幻读的区别:
事务隔离级别:
实现方式:可以在命令行中使用 --transaction-isolation 选项或在Mysql的配置文件my.cnf、my.ini里为所有的链接配置默认的隔离级别
Mysql事务隔离级别的区别:
事务隔离级别 | 脏读 | 不可重复读 | 幻读 |
读未提交 | 可能 | 可能 | 可能 |
读已提交 | 不可能 | 可能 | 可能 |
可重复读 | 不可能 | 不可能 | 可能 |
串行化 | 不可能 | 不可能 | 不可能 |
Mysql中锁的分类:
本质上,锁是一种协调多个进程或多个线程对某一资源的访问的机制,Mysql使用锁和MVCC机制实现了事务隔离级别
性能:
操作类型
数据粒度
注意点:
更细粒度
死锁的产生和预防:
死锁的必要条件:
处理死锁的方法:
Mysql中,通过通过以下几种方式来避免死锁:
InnoDB中的MVCC原理
本质上,MVCC机制保存了数据库中数据在某个时间点上的数据快照,意味着同个读操作的事务,按照相同的条件查询数据,无论查询多少次,结果都是一样的,也意味着不同的事务在同一个时刻看到同一个表的数据可能是不同的。
MVCC机制通过在每行数据表记录的后面保存两个隐藏的列来实现的,一个列用来保存行的创建版本号,另外一个保存行的过期版本号,每当有新的事务执行时,版本号就会自动递增,事务开始时刻的版本号作为事务的版本号,用于和查询到的每行记录的版本号作对比
查询操作:
插入操作:
更新操作:
删除操作:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。