索引
作用:提高数据库查询效率
类别:
1)聚集索引(每一行都按照主键进行排序存储,索引和数据放在一起)
2)非聚集索引: 非主键排序
3)联合索引: 多个字段组成的索引
事务是什么?有哪些特性?
事务是一组不可分割的操作,这些操作要么全部成功,要么全部失败。事务的特性包括:原子性( Atomicity )、一致性( Consistency )、隔离性( Isolation )和持久性( Durability )。 这四个特性简称为ACID 特性。
事务隔离级别
未提交读、提交读、可重复读、串行化
Read uncommitted 、Read committed 、Repeatable read 、Serializable
如何解决事务的并发问题(脏读,幻读)?
脏读:修改数据时加排他锁,直到事务提交后再释放锁,读数据时加共享锁,读完数据之后释放。
可重复读:修改数据时加排他锁,读取数据时加共享锁,都是在事务提交后释放锁。
MVCC多版本并发控制?
binlog,redolog,undolog都是什么,起什么作用?
InnoDB的行锁/表锁?
myisam和innodb的区别,什么时候选择myisam?
为什么选择B+树作为索引结构?
索引B+树的叶子节点都可以存哪些东西?
查询在什么时候不走(预期中的)索引?
sql如何优化?
explain是如何解析sql的?
order by原理
参考博客:
https://blog.csdn.net/voidccc/article/details/40077329