1.索引由数据库中一列或多列组合而成,其作用是提高对表中数据的查询速度。 索引的优点是可以提高检索数据的速度 索引的缺点是创建和维护索引需要耗费时间。 索引可以提高查询速度,会减慢写入速度。 2.索引的分类 普通索引 唯一索引 全文索引5.6后InnoDB只支持英文 单列索引 多列索引 空间索引 spatial //删除主键 非自增的,自增时只有一个主键时不允许删除 alter table bbs_addr drop primary key; ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key mysql> ALTER TABLE test14 MODIFY id INT UNSIGNED;
uni_card(card); ++mysql的索引目前大部分是B-tree,所有的值按顺序存储的,每个叶子页到根距离是一样的,索引是在mysql的存储引擎层的,因此不同的存储引擎支持的索引不同,即时相同可能内部实现技术不同,MyIsam索引通过数据的物理位置引用被索引的行,而InnoDB则根据主键引用被索引的行。my索引使用前缀压缩技术使得索引更小,INnoDB则按照原数据格式进行存储。 ++索引的优点: 1.索引大大减少了服务器需要扫描的数据量 2.索引可以帮助服务器避免排序和临时表 3.索引可以将随机I/O变为书序I/O。