数据库相关
SQL语言(内外连接,子查询,分组,聚集,嵌套,逻辑)
https://www.cnblogs.com/zhangpengnike/p/5545715.html
MySQL索引方法?
https://www.cnblogs.com/whgk/p/6179612.html
索引的优化?
https://baijiahao.baidu.com/sid=1594078288126052112&wfr=spider&for=pc
InnoDB与MyISAM区别?
https://blog.csdn.net/frycn/article/details/70158313
事务的ACID事务的四个隔离级别查询优化(从索引上优化,从SQL语言上优化)
1.read-uncommitted(读取没提交内容)脏读所有事务都可以看到其他未提交事务的执行结果,首先开启A,B事务,B事务执行了更新操作但未提交,A事务读取了更新后数据,B回滚,A事务出现了脏读。
2.read-committed(读取提交内容),一个事务从开始到提交前所做的任何改变都是不可见的。首先开启AB两个事务,在B事务更新并提交后,A事务读取了更新后的数据。此时处于同一A事务中查询出现了不同的查询结果,即不可重复读现象。
3.repeatable-read(可重读)mysql默认事务隔离级别,能确保同一事务的多个实例在并发读取数据时,会看到同样的结果。理论上会导致另一个问题:幻读。例如第一个事务对一个表中的数据进行了修改,这种修改涉及了表中的全部数据行,同时第二个事务也修改了这个表中的数据,这种修改是向表中添加一条数据。那么就会发生第一个事务的用户发现表中还有没有修改的数据,InnoDB和Falcon储存引擎通过多版本并发控制解决了该问题:InnoDB通过为每个数据行添加两个隐含值的方式来实现。这两个隐含值记录了行的创建时间,以及过期时间。每一行储存事件发生时的系统版本号,每一次开始一个新事务时版本号+1,每个查询根据事务的版本号来查询结果。
4.serializable(可串行化)这个是隔离级别最高的。通过强制事务排序,使之不可能相互冲突,从而解决幻读问题,是在每个读的数据行加上共享锁实现,在这个级别,可能会产生大量的超时现象和锁竞争。
B-与B+树区别?
http://blog.codinglabs.org/articles/theory-of-mysql-index.html
MySQL的联合索引(又称多列索引)是什么?生效的条件?
mysql的两种存储引擎的区别?、
https://www.cnblogs.com/rgever/p/9736374.html
radis相关知识
https://blog.csdn.net/constraintss/article/details/81459891
radis的数据结构
https://www.cnblogs.com/neooelric/p/9621736.html
索引
https://blog.csdn.net/waeceo/article/details/78702584