Mysql(mysql总结)
数据库结构( 原文 ) 在 InnoDB 存储引擎中,所有的数据都被逻辑地存放在表空间中,表空间(tablespace)是存储引擎中最高的存储逻辑单位,在表空间的下面又包括段(segment)、区(extent)、页(page): 1、.frm 文件用来描述表的格式或者说定义; 2、 .i bd 文件 数据索引、数据信息(默认所有表在一个文件中,打开 innodb_file_per_table设置按表区分 ); 同一个数据库实例的所有表空间都有相同的页大小;默认情况下,表空间中的页大小都为 16KB; 每个 16KB 大小的页中可以存放 2-200 行的记录。 索引 CREATE TABLE users( id INT NOT NULL, first_name VARCHAR( 20) NOT NULL, last_name VARCHAR( 20) NOT NULL, age INT NOT NULL, PRIMARY KEY( id), KEY(last_name, first_name, age) KEY(first_name) ); 聚集索引 B+ 树通过 B+ 树实现的就会使用 id 作为索引的键,并在叶子节点中存储一条记录中的所有信息。 所有正常的表应该有且仅有一个聚集索引(绝大多数情况下都是主键),表中的所有行记录数据都是按照聚集索引的顺序存放的。 辅助索引