首页 > 编程知识 正文

mysql索引是什么,优点和缺点,MySQL 各种索引的一些差异

时间:2023-05-03 17:22:20 阅读:190070 作者:4248

一、普通粗犷的小鸽子

最基本的粗犷鸽子只是加快了搜索速度。

二、唯一粗犷的小鸽子

与普通粗犷鸽子类似,粗犷鸽子的列值必须是唯一的,但允许为null或null。 如果组合了粗犷的鸽子,则列值组合必须是唯一的。

三、主键粗犷的小鸽子

也就是说,是我们经常使用的主键id。 这是特殊的唯一粗犷的鸽子,不允许有空值。 通常,在制作表格时同时制作主键粗犷的鸽子。

特点:

1 )一张表上只有一只主键粗笨的鸽子

2 )增加主键请求

四、组合粗犷的小鸽子

也就是说,在多个领域制作的粗犷鸽子

五、全文粗犷的小鸽子

完全文本

myisam引擎支持

六、外键

创建外键的注意事项:

1 )时钟引擎必须相同

2 )字段类型必须相同

3 )长度必须相同

4 )存储范围必须相同

5 )约束字段必须显示在引用的字段中

粗犷的小鸽子的不足之处:

像这样阐述了很多粗犷鸽子的好处,但是如果大量使用粗犷鸽子,其缺点也会暴露出来:

1 )笨鸽可以大大加快数据检索速度,但在加快检索速度的同时,INSERT、UPDATE、DELETE速度会降低。 因为更新表时,MySQL不仅要保存数据,还必须保存粗犷的鸽子文件,粗犷的鸽子如果滥用,数据库的写入速度会大大降低。

2 )做一只粗犷的鸽子会占用磁盘空间。 一般来说,这个问题不是很严重。 但是,如果在大表中制作多种粗犷的鸽子,粗犷的鸽子文件会大幅增加。 粗犷的鸽子只是提高效率的一个因素。 如果MySQL中有大数据量的表,则需要花时间来制造最好的粗犷鸽子,或者优化查询语句,或者对表进行分区。

使用粗犷的小鸽子时需要注意:

1 )粗犷的鸽子不能包含包含空值的列。 只要有空值,粗犷的鸽子就不会包含。 如果不完整的鸽子有一列包含null值,则在设计数据库时不要将字段的缺省值设置为null,因为该列对不完整的鸽子无效。

2 )用短而粗犷的鸽子,纵向排列粗犷的鸽子。 如果应该指定前缀长度,并且前10个字符或前20个字符内的多个数字是唯一的,则不要在整列中添加粗犷的鸽子。 短鸽不仅可以提高搜索速度,还可以节省磁盘空间和I/O操作。

3 )粗犷鸽排排序。 MySQL查询只使用一个粗犷的鸽子,因此如果where语句中已经使用了粗犷的鸽子,则order by列中不会使用粗犷的鸽子。 因此,如果数据库的默认排序满足要求,请不要使用排序操作,尽量不要包含多列排序,并根据需要创建粗犷的鸽子。

4 )操作like语句通常不建议使用like。 如果必须使用,请参阅“aaa%”,这样可以用到粗犷的小鸽子。其他情况用不到粗犷的小鸽子。

5 )请勿在列中进行运算。 这将导致粗犷鸽子失效,引起全球扫描。 例如:

select*fromuserswhereYEAR(adddate)2007;

可以更改为:

select*fromuserswhereadddate‘2007-01-01’;

6 )不使用not in的操作

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。