MySQL支持的锁有哪些?有哪些使用场景?
从锁的粒度上分,MySQL支持:表级锁、行级锁、页级锁。
表级锁的使用场景:
在修改数据库表结构的时候就会自动加表级别的锁——元数据锁,
比如:
alter table user add phone varchar(20);
执行时就会为表加上锁,此时其他会话中的执行就会等待;
行级锁的使用场景:
更新数据时使用索引会使用行级锁,
update user set name='张三' where id = 1001;