索引的设计和使用(一)

本文介绍了数据库索引的重要性,特别是BTREE和HASH索引的特性。强调了索引设计的原则,如选择合适的索引类型、创建唯一索引、利用最左前缀等,以及如何根据存储引擎和查询需求选择索引类型。
摘要由CSDN通过智能技术生成

索引是数据库中⽤来提⾼性能的最常⽤⼯具。 
索引类型,并简单介绍了索引的设计原则。在后⾯的优化篇中,将会对索引做更多的 介绍。

1 索引概述

所有MySQL列类型都可以被索引,对相关列使⽤索引是提⾼SELECT操作性能的
最佳途径。根据存储引擎可以定义每个表的最⼤索引数和最⼤索引长度,每种存储引 擎(如 MyISAM、InnoDB、BDB、MEMORY等)对每个表⾄少⽀持16个索引,总索 引长度⾄少为256字节。⼤多数存储引擎有更⾼的限制。

MyISAM和InnoDB存储引擎的表默认创建的都是BTREE索引。MySQL支持对索引字段的前N个字符创建索引。前缀索引 的长度跟存储引擎相关,对于MyISAM存储引擎的表,索引的前缀长度可以达到1000 字节长,⽽对于InnoDB存储引擎的表,索引的前缀长度最长是767字节。请注意前缀 的限制应以字节为单位进⾏测量,⽽CREATE TABLE语句中的前缀长度解释为字符 数。在为使⽤多字节字符集的列指定前缀长度时⼀定要加以考虑。

默认情况下,MEMORY存储引擎使⽤HASH索引,但也⽀持BTREE索引。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值