Maison > Article > base de données > Explication détaillée des bases de l'index MySQL
MySQL - Bases de l'index
Le La structure de la table utilisateur utilisée pour tester la création d'index dans cet article est la suivante :
Qu'est-ce qu'un index
Un index (également appelé « clé » dans MySQL) est un moteur de stockage qui permet au moteur de stockage de trouver rapidement des enregistrements Une structure de données
- "High Performance MySQL"
Il faut savoir que l'index est en fait une structure de données, et sa fonction est de nous aider à faire correspondre et trouver rapidement les données dont nous avons besoin est l'un des outils les plus couramment utilisés pour l'optimisation des performances des bases de données. Son rôle est équivalent à celui d'un guide d'achat dans un supermarché ou d'un catalogue dans un livre.
Type d'index
Vous pouvez utiliser SHOW INDEX FROM table_name;
pour afficher les détails de l'index
1. Index de clé primaire PRIMARY KEY
C'est un index unique spécial qui n'autorise pas les valeurs nulles. Généralement, l'index de clé primaire est créé en même temps lors de la création de la table.
Remarque : Une table ne peut avoir qu'une seule clé primaire
2 Index unique UNIQUE
La valeur de la colonne d'index unique doit être définie. être unique, mais les valeurs NULL sont autorisées. Dans le cas d'un index composite, la combinaison des valeurs des colonnes doit être unique.
Vous pouvez créer un index unique via ALTER TABLE table_name ADD UNIQUE (column);
Vous pouvez créer un index combiné unique via ALTER TABLE table_name ADD UNIQUE (column1,column2)
;
3. Indice ordinaire INDEX
L'index le plus basique, il n'a aucune restriction.
Vous pouvez créer un index normal via ALTER TABLE table_name ADD INDEX index_name (column);
Indice combiné INDEX
Index combiné, c'est-à-dire qu'un index contient plusieurs colonnes. Principalement utilisé pour éviter les requêtes de table. Vous pouvez créer un index combiné viaALTER TABLE table_name ADD INDEX index_name(column1, column2, column3);
. DROP INDEX index_name ON table_name;
Principes de conception d'index
1 Les colonnes adaptées à l'indexation sont les colonnes qui apparaissent dans la clause Where ou les colonnes spécifiées dans la clause de jointure2. Les classes avec une petite cardinalité ont un mauvais effet d'indexation. Il n'est pas nécessaire d'indexer cette colonne 3. Si vous indexez une colonne de chaîne longue, vous devez donc spécifier une longueur de préfixe. Peut économiser beaucoup d'espace d'indexation 4. Ne sur-indexez pas. Les index nécessitent de l'espace disque supplémentaire et réduisent les performances des opérations d'écriture. Lorsque le contenu de la table est modifié, l'index sera mis à jour voire reconstruit. Plus il y aura de colonnes d'index, plus ce temps sera long. Conservez donc uniquement les index requis pour faciliter les requêtes.
Références associéesSite Web chinois php
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!