来源:自学PHP网 时间:2015-04-16 10:50 作者: 阅读:次
[导读] 背景是某个业务的logdb历史oss_log(MyISAM表类型)例行删除,有时候会告deadlock。分析slow log发现有些删除需要很长时间,比如:drop table 2014_10_17_oss_abandonquest 花费了15041 2410秒。删除行为在凌...
背景是某个业务的logdb历史oss_log(MyISAM表类型)例行删除,有时候会告"deadlock"。分析slow log发现有些删除需要很长时间,比如:drop table 2014_10_17_oss_abandonquest 花费了15041.2410秒。删除行为在凌晨4点发出,刚好落在备份期间,因为5.5有了MDL(Meta data lock),所以–single-transaction时,事务内操作过的表都会持有MDL,因此不会被DDL破坏。所以,查看get_status.err会有如下日志: | | session.1 | | | | session.2 | | | | | | | | | | | | Step.1 | | begin; | | | | | | | Step.2 | | select * from tb_myisam; | | | | | Step.3 | | | | | | drop table tb_myisam; | | | | | | | 被阻塞… | |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com