MySQL索引设计原则及常用索引差异的探讨
索引定义:存储在磁盘上的一个独立的数据库结构,它包含数据表单中所有记录的引用指针。数据库索引的设计原则:
为了使索引更有效,您必须考虑哪些字段创建索引,并创建哪些字段上创建索引的索引类型。
那么指数设计原则是什么呢
1。选择唯一性索引
惟一索引的值是惟一的,可以更快地使用索引来确定记录。
例如,学生表的中学编号是一个独特的领域。建立这个领域的独特索引可以很快地确定学生的信息。
如果你使用一个名字,有可能是一个谐音,从而降低了查询速度。
2。为经常需要排序、分组和联合操作的字段建立索引
您经常需要字段,如按顺序、按组、不同和联合操作,以及排序操作浪费大量的时间。
如果为其建立索引,则可以有效地避免排序操作。
三.为经常作为查询条件的字段建立索引
如果字段经常用于查询条件,则字段的查询速度将影响整个表的查询速度,
这样一个字段的索引可以提高整个表的查询速度。
4。限制索引的数量
索引的数量不是越多越好,每个索引需要占用磁盘空间,索引越多,所需的磁盘空间就越大。
当表被修改时,对索引的重构和更新是非常麻烦的,索引越多,更新表就越浪费时间。
5。尝试使用数据较少的索引
如果索引的值很长,查询的速度会受到影响。例如,char(100)类型字段的全文
检索所需的时间必须大于char(10)类型字段所需的时间。
6。使用前缀尽可能多地索引
如果索引字段的值很长,最好使用值的前缀来索引。例如,全文检索的文本和blog类型字段
这将是浪费时间,如果只检索到字段前面的几个字符,可以提高检索速度。
7。删除不再使用或很少使用的索引
当更新表中的数据或更改数据的使用方式时,可能不需要一些原始索引。
成员应定期查找这些索引并删除它们,从而减少索引对更新操作的影响。
8。不应该对小表进行索引;在包含大量列时不考虑索引,也不需要搜索非空值。
----------------------------------------------------------
MySQL索引相关常识:
经常用来过滤记录的字段。
1。主键字段,系统自动创建主键的索引;
2。唯一键字段,系统自动创建相应索引;
3定义为外键的字段。外键约束;
4。用于在查询中连接表的字段;
5。通常用作字段顺序的字段的字段;
索引占用磁盘空间,创建不必要的索引只会造成浪费。
三。索引的创建必须考虑到数据的操作方式。
1。内容很少变化,经常被查询,为它创建一些索引并不重要;
2。常规的、常规的变化表,你需要仔细的创建索引是必要的;
四、主键和唯一键的区别
1。域域组作为主键不能为空。唯一密钥可以。
2。在一个表中只能有一个主键,同时存在多个唯一键。
逻辑设计上的最大差异是,主键在逻辑设计中通常被用作记录标签,这也是建立起来的。
主键的唯一含义和唯一密钥仅保证域域组的唯一性。
五、综合指数和单项指数
复合索引是一个多字段联合索引,它经常需要这些字段的组合来再次查询条件。
唯一的索引主要是主键ID索引,存储结构顺序与物理结构一致。
如:创建表索引idx(A,B)
按A排序,同一个由B排序,所以当你查找A或AB时,
你可以使用这个索引。但是当你只查B时,索引对你没有帮助。也许你可以跳过去找它。
---------------------------------------------
添加和删除索引:
1,表的主键和外部键必须索引。
2、具有数据量超过300w表应该被索引。
三.经常与其他表相连的表,应该在连接字段上进行索引。
4。WHERE子句中经常出现的字段,尤其是大表的字段应该被索引。
5,索引应该建立在高选择字段上。
6,索引应该建立在小字段上,而不为大文本字段或超长字段索引。
7。综合指数的建立需要仔细分析,一个单一的字段索引被认为是可能的,而不是:
a,复合索引中主列字段的正确选择通常是一个更好的选择字段。
B、复合索引的几个字段经常出现在WHERE子句中吗单字段查询非常小吗如果是,则可以建立复合索引;否则,将考虑单个字段索引;
c,如果复合索引中包含的字段经常出现在WHERE子句中,则它们被分解成多个单字段索引。
如果复合索引包含超过3个字段,请仔细考虑它的必要性,并考虑减少复杂字段。
e,如果在这些字段上有一个字段索引和一个复合索引,则复合索引通常可以被删除。
8,频繁的数据操作表,不要建立太多的索引;
9、删除无用索引,避免对执行计划产生负面影响;
这些都是一些常见的标准索引,索引的建立必须谨慎,并对各指标的必要性,应仔细分析,并建立了索引的基础。因为太多的指标和不足和不正确的索引是无用的性能:每个指标建立在表增加存储成本,和指数将增加插入、加工成本删除和更新操作。此外,过多的复合指标通常有单字段索引的情况下没有价值。相反,当添加或删除时,它们也会降低数据的性能,特别是对于频繁更新的表。
以上是关于MySQL和之间的共同指标差异的指标设计的原则,这是所有萧边分享你的内容。我希望能给你一个参考,希望你能得到很多支持。