摘要: 线上某服务时不时报出如下异常(大约一天二十多次):“Deadlock found when trying to get lock;”。 Oh, My God! 是死锁问题。尽管报错不多,对性能目前看来也无太大影响,但还是需要解决,保不齐哪天成为性能瓶颈。 为了更系统的分析问题,本文将从死锁检测、索引 阅读全文
posted @ 2020-06-19 18:30 风在何方 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 之前在面试中被问到此问题,在此做下笔记!Mysql场景的存储引擎为MyISAM和InnoDB,我们以这两种来分析。 MyISAM 总:MyISAM中不会出现死锁。在MyISAM中只用到表锁,不会有死锁的问题,锁的开销也很小,但是相应的并发能力很差。解析:MyISAM不支持事务,即每次的读写都会隐性的 阅读全文
posted @ 2020-06-19 18:19 风在何方 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 1. 主键索引 : 行锁, 锁定指定行 2. 索引 : 间隙锁, 锁定 索引涉及行 3. 无索引: 相当于表 锁, 全表查询 阅读全文
posted @ 2020-06-19 17:53 风在何方 阅读(372) 评论(0) 推荐(0) 编辑
摘要: 1. 未提交读2. 提交读 RC : 不可避免 【幻读】3. 可重复读 RR : 读的数据存在快照中;临键锁(+意向/排他),来避免 幻读 4. 串行化 脏读: RC的情况下, 有数据修改,2次读取的结果不一致 幻读: RC 情况下, 有新数据 插入, 2次读取结果不一致 a.为了解决幻读问题,in 阅读全文
posted @ 2020-06-19 17:50 风在何方 阅读(116) 评论(0) 推荐(0) 编辑