锁的分类
对表的并发操作就需要用到锁,其中mysql中锁分为共享锁(shared lock读锁)和排他锁(exclusive lock写锁)
锁的等级
1、表锁、行锁
2、MySQL InnoDB 默认行级锁
3、行级锁基于索引,如果一条 SQL 语句不用索引就不会使用行级锁,而会使用表级锁把整张表锁住
锁的解释
锁的各种操作需要消耗资源,包括获取锁、检查锁(是否已经解除、释放)。如果系统花费大量时间来管理锁,而不是存取数据,那么系统性能可能会受到影响,因此要在锁和数据安全之间寻求平衡
释放
锁只有在执行commit或rollback的时候才会释放
存储引擎
InnoDB锁行
MyISAM锁表
网友评论