MySQL 中,索引,主键,唯一索引,联合索引的区别是什么?对数据库的性能有什么影响?
Posted 四猿外
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 中,索引,主键,唯一索引,联合索引的区别是什么?对数据库的性能有什么影响?相关的知识,希望对你有一定的参考价值。
简单描述mysql 中,索引,主键,唯一索引,联合索引的区别,对数据库的性能有什么影响(从读写两方面)
索引是一种特殊的文件(InnoDB 数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。
普通索引(由关键字KEY 或INDEX 定义的索引)的唯一任务是加快对数据的访问速度。
普通索引允许被索引的数据列包含重复的值。如果能确定某个数据列将只包含彼此各不相同的值,在为这个数据列创建索引的时候就应该用关键字UNIQUE 把它定义为一个唯一索引。也就是说,唯一索引可以保证数据记录的唯一性。
主键,是一种特殊的唯一索引,在一张表中只能定义一个主键索引, 主键用于唯一标识一条记录,使用关键字PRIMARY KEY 来创建。
索引可以覆盖多个数据列,如像INDEX(columnA, columnB)索引,这就是联合索引。
索引可以极大的提高数据的查询速度,但是会降低插入、删除、更新表的速度,因为在执行这些写操作时,还要操作索引文件。
以上是关于MySQL 中,索引,主键,唯一索引,联合索引的区别是什么?对数据库的性能有什么影响?的主要内容,如果未能解决你的问题,请参考以下文章
MySQL 中,索引,主键,唯一索引,联合索引的区别是什么?对数据库的性能有什么影响?