J'ai une grande table avec des millions d'enregistrements.MySQL utilise-t-il des index existants pour créer de nouveaux index?
Table `price`
------------
id
product
site
value
La table est nouvelle et aucun index n'a été créé.
Je puis lancé une demande de nouvelle création d'index avec la requête suivante:
CREATE INDEX ix_price_site_product_value_id ON price (site, product, value, id);
Cela a pris très longtemps, la dernière fois que je vérifiais RAN pour 5000+ secondes, en raison de la machine.
Je me demande si j'émets une autre création d'index, utilisera-t-elle l'index existant dans le calcul du processus? Si oui, sous quelle forme?
Suivant pour exécuter la requête 1:
CREATE INDEX ix_price_product_value_id ON price (product, value, id);
Suivant pour exécuter la requête 2:
CREATE INDEX ix_price_value_id ON price (value, id);
Ça a l'air cool. Comment vérifier si InnoDB Plugin est installé sur la machine? – Pentium10
Faites 'SELECT VERSION()' dans votre client MySQL. Est-ce que votre serveur MySQL v5.1 +? –
ma version est: 5.1.33-community-log – Pentium10