1. 数据库的安装html
2. 数据库设计须要注意什么mysql
3. SQL语句优化sql
4. 怎样处理慢查询?数据库
5. 怎样更好的利用数据库索引?缓存
6. 事务隔离级别有哪些?怎么实现的?并发
7. 数据库锁有哪些?数据库设计
8. 如何保证数据库高可用?高并发
9. 如何保证数据库高并发?优化
10. 什么样的数据库缓存方案最合理?ui
11. innodb和myisam对比
12. 有哪些好用的数据库中间件?
13. 数据库日志介绍
14. 数据库主从复制
mysql 数据主从的实现方式:RBR,SBR,MBR
2. 索引:
B+Tree
1)一个节点存储多个数据,这样的好处,是能够充分利用预读功能。
2)节点上是不存储数据的(这里是指不存储指向数据真实地址的指针或主键地址),全部的数据都在叶子节点上。而且每一个叶子节点有一个指向下一个叶子节点的指针,这样能够方便遍历。
索引分类:
B-Tree索引:
哈希索引(hash index):哈希索引基于哈希表实现,只有精确匹配索引全部列的查询才有效。结构十分紧凑,查询速度很是快。
空间数据索引:
全文索引:
innodb索引分类:
聚簇索引(clustered index):1) 有主键时,根据主键建立聚簇索引; 2) 没有主键时,会用一个惟一且不为空的索引列作为主键,成为此表的聚簇索引; 3) 若是以上两个都不知足那innodb本身建立一个虚拟的汇集索引
辅助索引:在聚簇索引之上建立的索引称之为辅助索引,辅助索引访问数据老是须要二次查找。辅助索引叶子节点存储的再也不是行的物理位置,而是主键值。
复合索引:由多列建立的索引称为符合索引,在符合索引中的前导列必须出如今where条件中,索引才会被使用
前缀索引:当索引的字符串列很大时,建立的索引也就变得很大,为了减少索引体积,提升索引的扫描速度,就用索引的前部分字串索引,这样索引占用的空间就会大大减小,而且索引的选择性也不会下降不少。并且是对
BLOB和TEXT列进行索引,或者很是长的VARCHAR列,就必须使用前缀索引,由于MySQL不容许索引它们的所有长度。
参见:http://www.javashuo.com/article/p-kshkcuvg-ea.html