生产环境MySQL死锁如何监控及如何减少死锁发生的概率。
时间:2021-07-01 10:21:17
帮助过:124人阅读
1、尽量使用短小事务,避免大事务。
2、加FOR
UPDATE/LOCK
IN SHARE MODE锁时,最好降低事务隔离级别,例如用RC级别,降低死锁发生概率,也可以降低锁定粒度。
3、事务中涉及多个表,或者涉及多行记录时,每个事务的操作顺序都要保持一致。
4、通过索引优化SQL效率,降低死锁概率,避免全表扫描导致锁定所有数据。
5、程序中应有事务失败检测及自动重复提交机制。
6、高并发(秒杀)场景中,关闭innodb_deadlock_detect选项,降低死锁检测开销,提高并发效率。
生产环境MySQL死锁如何监控及如何减少死锁发生的概率。
标签:避免 sql 生产环境 使用 最好 col 过程 mys 事务