Mysql 常见面试题
索引
1、mysql中聚簇索引和非聚簇索引的区别?(基本必问)
2、是否用到了索引?(explain)
3、索引失效的情况?
4、索引的分类?
5、索引的结构?b+树和b树的区别?
6、如何在不影响业务的情况下给表增加一个字段,那如果是索引呢?
pt-online-schema-change
7、索引为什么不使用 Hash 结构
锁
1、如何用mysql实现一个乐观锁?
2、什么是悲观锁?怎么实现悲观锁?
3、判断一些sql是否产生锁?是什么锁?
4、什么是死锁?怎么产生死锁?怎么解决?
5、select for update 一定要在事务中使用么?它什么情况下是行锁,什么情况下是表锁?
事务
1、什么多版本并发控制? 解决什么问题?(很重要)
1)读写之间阻塞的问题
2)降低了死锁的概率
3)解决一致性读的问题
2、事务的特性是什么?
3、延伸:分布式事务
4、事务的隔离级别,分别有什么问题?
读未提交、读提交、重复读、序列化
其他
1、说一下主从复制?读写分离可能出现什么问题?
2、limit和offset在大的偏移量的情况下如何优化呢?
本作品采用《CC 协议》,转载必须注明作者和本文链接