0
点赞
收藏
分享

微信扫一扫

MySQL(面试问题)

曾宝月 2024-09-28 阅读 27
mysql面试
MySQL用了什么索引结构
B+树的优势
什么是联合索引的最左匹配

给了个sql a=1 and b>=2 and c=3判断哪几个字段走了索引

什么时候用索引,索引失效场景
联合索引(id,price,states)selsect * from 商品表 where id = 1 and price > 2 and states = 1走哪些索引
mysql锁有哪些
范围用途
全局锁整个数据库全库逻辑备份
表锁表的读写
元数据锁读锁:保证用户对表中数据进行增删改查时,其他线程对表结构进行更改。写锁:修改表的结构。
意向锁意向锁,其实什么也没锁,主要为了快速判断表里是有记录被加锁。
AUTO-INC锁自增锁,用于自增的字段。
记录锁行 / 记录分为:X(写锁)和 S(读锁)。对记录的读写
间隙锁范围锁,锁定一个范围,例如(3,5),那么其他事务就无法插入4这条记录。间隙锁之间是兼容的,即两个事物可以同时持有包含相同范围的间隙锁,因为间隙锁主要是为了解决可重复读隔离级别下的幻读现象。
临键锁是记录锁和间隙锁的结合,锁定一个范围,并锁定记录本身。例如临键锁(3,5],那么其他事务就无法插入4这条记录,也无法修改5这条记录。
插入意向锁表明事务想往某个范围内插入数据。
什么时候用记录锁,什么时候用表锁,(这里提示where语句条件下什么时候用)

这个问题暂时不会。。。。。。。。。。
全表扫描的时候用表锁
where语句没有使用索引,要进行全表扫描的时候用表锁??

举报

相关推荐

0 条评论