HTML HTML5 PHP Mysql Linux 缓存技术 工具 资讯 读书 其他
当前位置: 资讯首页 » 全文内容

读 < MySQL 技术内幕 InnoDB 存储引 >

发布于: 2017-04-28 15:45:41 )
最近在看 <MySQL 技术内幕 InnoDB 存储引> 这本书, 今天在回老家的车上翻阅了一遍, 收益匪浅,我把里面比较精华的部分分享一下.


1  MySQL Server 体系结构图, 看后是否对Mysql的认识更有立体感了


2 LRU原则

LRU(Latest Recent Used)最近最少使用原则, Mysql数据的缓冲池是通过LRU算法进行管理的. 即: 最频繁使用的的页在LRU列表的最前端, 而最少使用的页在LRU列表的尾端. 当缓冲池不能存放新读取到的页时, 将首先释放LRU列表的尾端页.


3 InnoDB 逻辑存储结构

   所有数据存储在一个空间中,称为表空间(tablespace). 表空间又由段(segment), 区(Extend), 页(page)组成.


4 表分区

   分区的过程是讲一个表或索引分解为多个更小,更可管理的部分.就访问数据库的应用而言,从逻辑上将只有一个表或一个索引,但是从物理上这个表或索引可能由数十个物理分区组成.每个分区都是独立的对象,可独自处理,也可作为一个更大的对象的一部分进行处理.

常见的分区: Range, List, Hsh, Key 这四中分区的条件是:数据必须是整型,如果不是整型,那应该需要通过函数转化为整型. Columns分区可直接使用非整型的数据进行分区.


5 B+树

B+树是为磁盘或其他直接存取辅助设备设计的一种平衡查找树. 在B+树中,所有记录节点都是按键值的大小顺序存放到同一层的叶子节点上,由各叶子节点指针进行连接.



最近发现越学习越觉得自己的成长空间很大,  好多东西之前以为很多,其实静下心来深入琢磨还是能搞明白的, 任何时候Why都比What重要.


书的作者在序言中提到的几句话应该引起深思:

    不要相信任何的"神话",学会自己思考

    不要墨守成规,大部分人知道的事情可能是错误的

    不要相信网上的传言,去测试,根据自己的实践做出决定

    花时间充分思考,敢于提出质疑
To Top