<返回更多

mysql典型的超时异常你见过几种?

2019-08-14    
加入收藏



我们在使用MySQL的时候,由于各种原因会出现超时的情况,我认为常见的有连接超时、等待超时、锁等待超时等等。可以使用show variables 来看看默认的各种类型超时时间。mysql中超时时间单位为秒。

show variables like '%timeout%'

默认超时时间

连接超时

锁等待超时

由此可见,innodb存储引擎一旦出现锁超时异常,默认不会回滚事务,这对应用来说,非常不合理,所以锁等待超时异常发生后,你的应用程序应该自定义处理,要嘛提交事务,要嘛回滚事务。

复制连接超时

slave_net_timeout:mysql进行主从复制时候,当从服务器从主服务器读取二进制日志失败后,它会继续等待slave_net_timeout设置的时间后,重连服务器并获取数据,默认值60秒。

MyISAM表延迟插入超时

delayed_insert_tiemout:为MyISAM存储引擎设置的,主要为insert语句超时时间,在锁表情况下,insert语句会一直处于等待中,当超过默认值300秒,则中断连接。

总结

本节重点讲解了各种超时情况,只有了解它们,我们才有可能针对性的优化,并且在超时异常出现之后,能快速定位及处理。当然应用环境不同,超时异常产生原因复杂,这都需要我们在生产中积累经验。

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>