数据库(面试篇)

定位慢查询

SQL性能分析

在这里插入图片描述
在这里插入图片描述

索引

在这里插入图片描述

在这里插入图片描述

聚簇索引

聚簇索引与非聚簇索引,聚簇索引一般是主键索引。
在这里插入图片描述
索引失效
在这里插入图片描述

SQL优化

在这里插入图片描述

索引场景题

MySQL索引,现在有一个名字,性别,身份证的表,5000w数据,查询所有男性,在性别上建索引,但是仍然全表扫描,为什么?MySQL这么做的原因是什么?
答:MySQL会根据统计信息来选择索引,如果男女性别比例是1:1的话,那么使用索引可能并不会较少查询的行数,带来更快的查询速度。如果要查询的数据包括索引列之外的数据的话,在这种情况下索引可能更加耗时,因为还会涉及到回表。其次,索引是通过区分不同的值排序来实现快速查找的,如果一个字段只有两个可能的值,那么这个索引选择性很低,查询并不高效。

事务

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

并发事务

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

redo log 和 undo log

在这里插入图片描述
在这里插入图片描述

MVCC

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
事务隔离级别:读未提交、读已提交、可重复读、串行化
读未提交没有使用锁和MVCC,读已提交和可重复读使用了MVCC,他们两个的区别是,读已提交每次查询都需要创建一个新的readView快照,可重复读因为解决了不可重复读的问题,所以他在同一个事务中会使用相同的快照。串行化使用的是表锁。

主从同步原理

在这里插入图片描述

分库分表

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值