纸飞机的官方的下载地方
一、innodb核心特性事务1、什么是事务2、如何使用事务3、事务演示4、事务通俗理解5、一个成功事务的生命周期6、一个失败事务的生命周期7、事务的特性 ACID8、事务的控制语句1)自动提交2)事务的隐式提交3)控制语句二 、MySQL事务的3种运行模式1、自动提交事务(隐式开启、隐式提交)2、隐式事务\(隐式开启、显式提交)3、显式事务( 显式开启、显式 telegram官网下载网址提交)4、 事务保存点三、 事务的使用原则四、数据库读现象1、四种隔离级别Mysql默认使用的数据隔离级别是REPEATABLE READ ,可重复读,允许幻读。2、事务并发常见问题实例演示 — 数据库读现象2.1脏读1)修改自动提交事务开关2)修改数据库的事务隔离级别3)终端1查询用户指定信息(此处不提交事务)4)终端2查询用户信息2.2不可重复读1)修改事务隔离级别2)窗口1开启事务,查询指定用户数据3)窗口2同时执行事务2.3 幻读2)窗口13)窗口2:此处,事务A中查询指定id为5的记录,没有查询到结果后,事务B进行插入了一条id为5的记录并且提交事务;3、修改隔离级别4、解决方案五、事务中的锁1.什么是锁?锁的作用2.示例3.锁的种类分类4.锁的粒度分类1) 表级锁 (偏向于读)2) 行级锁3) 页级锁5.锁的类别分类1、锁的使用6、多版本并发控制(MVCC)7、事务的隔离级别8.脏读,幻读,不可重复读六、事务的日志1.redo log2.undo log1)作用七、 innodb存储引擎的锁机制1、行级锁有三种算法:2、总结3、telegram官方中文版下载的地方在哪里死锁1、结论2、有多种方法可以避免死锁4 什么时候使用表锁(了解)5 行锁优化建议八、数据库总结1、什么是事务2、如何使用事务3、事务演示4、事务通俗理解5、一个成功事务的生命周期6、一个失败事务的生命周期7、事务的特性 ACID8、事务的控制语句1)自动提交2)事务的隐式提交3)控制语句
隐式 == 自动
显式 == 手动1、自动提交事务(隐式开启、隐式提交)2、隐式事务(隐式开启、显式提交)3、显式事务( 显式开启、显式提交)
无论事务是显式开启还是隐式开启,事务会在某些情况下被隐式提交4、 事务保存点
savepoint和虚拟机中的快照类似,用于事务中,没设置一个savepoint就是一个保存点,当事务结束时会自动删除定义的所有保存点,在事务没有结束前可以回退到任意保存点
最后总结一下事务的控制语句1、四种隔离级别
Mysql默认使用的数据隔离级别是REPEATABLE READ ,可重复读,允许幻读。2、事务并发常见问题实例演示 — 数据库读现象2.1脏读1)修改自动提交事务开关2)修改数据库的事务隔离级别3)终端1查询用户指定信息(此处不提交事务)4)终端2查询用户信息2.2不可重复读1)修改事务隔离级别2)窗口1开启事务,查询指定用户数据3)窗口2同时执行事务
窗口1先是开启事务,查询指定用户信息,然后窗口2开启事务,查询数据指定用户,修改数据,提交事务,然后再回到窗口1,查询指定用户信息;窗口2操作内容如下2.3 幻读
上面我我们学习了一下什么不可重复读,在mysql数据库中,不可重复读是不被允许的。2)窗口13)窗口2:此处,事务A中查询指定id为5的记录,没有查询到结果后,事务B进行插入了一条id为5的记录并且提交事务;3、修改隔离级别4、解决方案1.什么是锁?锁的作用
锁2.示例1) 表级锁 (偏向于读)2) 行级锁3) 页级锁5.锁的类别分类1、锁的使用
行级锁分为共享锁和排他锁两种。
案例6、多版本并发控制(MVCC)7、事务的隔离级别8.脏读,幻读,不可重复读1.redo log2.undo log1)作用1、行级锁有三种算法:2、总结3、死锁
纸飞机的下载的方法在哪里1、结论
发生死锁后,InnoDB一般都可以检测到,并使一个事务释放锁回退,另一个获取锁完成事务。
死锁现象2:高并发场景下,核心原理是:命中了辅助索引,会先锁定辅助索引,再锁定聚集索引2、有多种方法可以避免死锁4 什么时候使用表锁(了解)
绝大部分情况使用行锁,但在个别特殊事务中,也可以考虑使用表锁5 行锁优化建议
通过检查InnoDB_row_lock状态变量来分析系统上的行锁的争夺情况,在着手根据状态量来分析改善;八、数据库总结