首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
mysql
订阅
阑珊丶
更多收藏集
微信扫码分享
微信
新浪微博
QQ
1篇文章 · 0订阅
MySQL 长事务导致的 Table Metadata Lock
当一个会话在主库执行 DML 操作还没提交时,另一个会话对同一个对象执行了 DDL 操作如 drop table,而由于 MySQL 的 binlog 是基于事务提交的先后顺序进行记录的,因此在从库上应用时,就出现了先 drop table,然后再向 table 中 insert 的情况,导致从库应用出错。 因此,MySQL 在 5.5.3 版本后引入了 Metadata lock,只有在事务结束后才会释放 Metadata lock,因此在事务提交或回滚前,是无法进行 DDL 操作的。