Advertisement

MySQL中insert语句为何使用大量锁

阅读量:

该文章为《MySQL实战45讲》课程学习笔记及部分摘抄,原课程链接MySQL 实战 45 讲 (geekbang.org)

在上一篇推送中,在讨论MySQL数据库性能优化时,默认情况下MySQL会对自增主键锁进行改进。具体来说,在获取自增ID后立即解除了自增锁定。

因此,在数据库操作中执行的insert操作通常非常轻量,在资源消耗上具有极高的效率。然而这一结论仅适用于'常规的insert操作'而言,并不能完全涵盖所有情况。实际上,在某些特定场景下存在'特殊类型的insert操作'这些情况在执行过程中需要额外进行锁管理或者无法立即释放自增锁以确保数据一致性等机制

一、 insert … select 语句

复制代码
 CREATE TABLE `t` (

    
   `id` int(11) NOT NULL AUTO_INCREMENT,
    
   `c` int(11) DEFAULT NULL,
    
   `d` int(11) DEFAULT NULL,
    
   PRIMARY KEY (`id`),
    
   UNIQUE KEY `c` (

全部评论 (0)

还没有任何评论哟~