Maison > Article > base de données > index de base de données mysql
Un index est un fichier spécial qui contient des pointeurs utilisés par tous les enregistrements. Tout comme la table des matières d’un livre, elle accélère la récupération du livre. Une base de données est presque inutilisable sans index. Quelqu'un a dit un jour en plaisantant que si MySQL utilisant index est une Lamborghini, s'il n'utilise pas d'index, c'est au mieux un trois-roues à propulsion humaine.
Les index sont divisés en index clusterisés et index non clusterisés. Les index clusterisés améliorent la vitesse de récupération de plusieurs lignes, et les index non clusterisés améliorent la vitesse de récupération de lignes uniques de données. Parmi les fonctions de la base de données, trois types d'index peuvent être créés : index unique, index de clé primaire et index clusterisé.
L'index ordinaire est un index sans aucune restriction. Son processus d'établissement est : CREATE
INDEX
index_name
ON
table
(
column
(col_name));它是MYIASM数据库引擎默认的BTREE类型的索引。使用navicat导出mysql数据库脚本的时候经常会看到这样的字段。
<strong> 唯一索引</strong>是在普通索引的基础上保证索引列的值必须唯一,除主键外可以有空值。建立过程:
CREATE UNIQUE INDEX indexName ON table(column(length))
索引的利弊:
>
索引大大提高查询与排序速度,但是会小号数据保存与更新效率。索引需要生成索引文件,当大量使用组合索引的话,索引文件就会迅速膨胀。 针对这些问题,提出了以下优化方法:
1. Quand utiliser un index clusterisé ou un index non clusterisé ? Utiliser un index clusterisé 2. 使用短索引列。 但对于一下查询语句是无效的:<br> 以上就是mysql数据库-索引的内容,更多相关内容请关注PHP中文网(www.php.cn)!<br>
Description de l'action
Utiliser des index non- index clusterisé Index
Les colonnes sont souvent regroupées et triées
Utiliser
Utiliser
Utilisé
Non utilisé
Une ou très peu de valeurs distinctes
Non utilisé
Non utilisé
Petit nombre de valeurs différentes
Utiliser
Ne pas utiliser
Grand nombre de valeurs différentes
Non utilisé
Utiliser
Colonnes fréquemment mises à jour
Ne pas utiliser
Utiliser
; >Colonne de clé étrangère
Utiliser
Utiliser
Colonne de clé primaire
Utiliser
Utiliser
Modifier fréquemment les colonnes d'index
Ne pas utiliser
Utiliser
<strong>
</strong>索引列如果使用varchar(255)的话会让索引文件变大,不利于检索,这255个字符中前10或20个字符能够保证索引唯一的话,就使用这些字段作为索引列即可。
3.
like语句
在数据库操作中不建议使用like语句,但费用不可时,like"%aaa%"不会使用索引而like“aaa%”则可以使用索引。
4.
不要再索引列执行运算,这样会导致索引失效。
5.
使用越小越简单的数据类型越好;尽量避免null;
6.
组合索引仅能对索引最左边的索引进行有效查询。如:
索引列为c1,c2,以下查询语句有效:
select * form table where c1=1 and c2=2;
select * from table where c1=1;
select * from table where c2=2;
<br>
<br>