千家信息网

mysql死锁deadlock相关几个系统变量innodb_lock_wait_timeout是怎样的

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章将为大家详细讲解有关mysql死锁deadlock相关几个系统变量innodb_lock_wait_timeout是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章
千家信息网最后更新 2026年10月31日mysql死锁deadlock相关几个系统变量innodb_lock_wait_timeout是怎样的

这篇文章将为大家详细讲解有关mysql死锁deadlock相关几个系统变量innodb_lock_wait_timeout是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

前言

随着对于mysql死锁知识的进一步了解,发现与死锁相关的几个系统变量。下面梳理这几个技术概念,便于更进一步掌握mysql死锁的概念。这样在出现一些复杂的死锁问题时,也有助于更快速解决故障。

innodb_deadlock_detect系统变量

  • mysql 5.7.15引入此系统变量,可取值有2个,分别为:off与on。

  • 默认值为on,表明开启互锁检测功能。

  • 但是有运维经验的同学或许碰到过,在一些高并发的数据库,如果开启了死锁检测,因为死锁检测进程会去检测是否发现死锁,则会导致数据库性能下降,因为系统必须消耗资源用于定期检测是否发生死锁。

  • 建议在高并发情况下,可以考虑关闭此功能。当然一般情况,保持默认值即可。

innodb_lock_wait_timeout系统变量

  • innodb_lock_wait_timeout只能用于innodb表的事务(不适用于myisam表,因此它只有表锁,而无行锁功能)。在发生锁等

  • 待时,到达指定的值,则提示锁等待超时,自动回滚报 锁超时 的当前SQL语句(注:不是事务),这样的话,就会导致所属事务的产生数据不一致。所以必须保证在让整个事务回滚,这个由系统变量 innodb_rollback_on_timeout或者命令行选项--innodb-rollback-on-timeout控制。

  • innodb_lock_wait_timeout单位为秒,默认值为50秒。如果出现锁超时,报错信息见下:

  • ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction

  • 对于高并发的OLTP数据库环境,建议减少innodb_lock_wait_timeout系统变量。你试想一下,如果锁超时时间检查一短,就可以提升并发度;而对于OLAP数据库,可以考虑增加innodb_lock_wait_timeout系统变量,因为OLAP不需要很高的并发度,如果此值过低,锁超时会话就可以等待其它持锁会话完成,而不是马上报错回滚,毕竟每次更新的数据量极大,一回滚半天白作了。

  • 如果启用了innodb_deadlock_detect=on(默认值),则innodb_lock_wait_timeout不会起作用。因为启用前者,一发现死锁,马上回滚某个死锁事务。但如果配置innodb_deadlock_detect=off,则innodb_lock_wait_timeout会起作用,让后者来控制死锁的回滚。

mysql> show variables like '%innodb%lock%timeout%';

+--------------------------+-------+

| Variable_name | Value |

+--------------------------+-------+

| innodb_lock_wait_timeout | 50 |

+--------------------------+-------+

1 row in set (0.00 sec)

关于mysql死锁deadlock相关几个系统变量innodb_lock_wait_timeout是怎样的就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

死锁 系统 变量 数据 事务 检测 数据库 功能 知识 作用 内容 建议 文章 更多 概念 篇文章 控制 不错 复杂 一致 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 亿人帮互联网科技有限公司 金融科技还是互联网 互联网最新的科技有限公司 互联网医疗科技 赫美联合互联网科技 安控科技rtu产品工业互联网 恒银科技与互联网金融 成都互联网科技公司100强 辽宁互联网新科技 注册互联网科技公司经营范围大全 西安小鹰速贷互联网科技有限公司 互联网科技和法律行业 科技互联网的核心竞争力 深圳无忧互联网科技 富国互联网科技002692 工业互联网科技创业 广州梦谷互联网科技有限公司领导 互联网科技企业商标注意事项 中国互联网公司的科技投入 前海云享互联网科技 广州万易互联网科技有限公司 今日互联网科技 友谊互联网络科技 华服互联网科技官网 互联网科技大奖都有哪些公司 广西互联网科技孵化中心 众安科技工业互联网合作 智帮互联网科技公司最近动向 广州千川互联网科技有限公司 互联网科技股为什么大涨
0