技术分享 | 如何避免 RC 隔离级别下的 INSERT 死锁
作者:张洛丹,DBA 数据库技术爱好者~
爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。
本文共 3200 字,预计阅读需要 10 分钟。
1说在前面
本文分析了 INSERT
及其变种(REPLACE/INSERT ON DUPLICATE KEY UPDATE
)的几个场景的死锁及如何避免:
- 场景一:INSERT 唯一键冲突[1]
- 场景二/三:
REPLACE INTO
唯一键冲突(来自线上业务) - 场景四:
INSERT
主键冲突(来自官方案例)
其实 Google 一番,也会有大量这样的文章。本文只是就几个场景进行了分析,不过一遍走下来,对 INSERT
加锁情况、如何导致的死锁也就掌握了,个人能力有限,如文中内容有错误和纰漏,也欢迎大佬指出。
有兴趣的就继续往下看吧~