Mysql
 sql >> база данни >  >> RDS >> Mysql

Може ли създаването на индекс да използва съществуващи индекси?

MySQL обикновено възстановява цялата таблица, когато добавите индекс, така че всички съществуващи също се преизграждат. Това може да е бавно.

Единственото изключение е добавянето на индекс с помощта на плъгина InnoDB, който не го прави.

Доколкото знам, винаги прави пълно сканиране на таблица, когато създава индекс, но МОЖЕ да направи сканиране на индекс, ако добавяте индекс, който има същото (или подмножество) от колони като друг индекс. Такива индекси обикновено са полезни само ако колоните са в различен ред.

Използвайки stock mysql, колкото повече индекси имате, толкова по-бавно ще бъде създаването на нов, тъй като той възстановява и съществуващите индекси.

С плъгина мисля, че няма разлика.

Така или иначе, ако планирате да добавите няколко индекса, трябва да ги направите всички наведнъж, а не един по един.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PDO израз за вмъкване с цикъл през масив $_POST

  2. Проблем с ОСНОВЕН КЛЮЧ при създаване на таблици в Rails с помощта на команда rake db:migrate с mysql

  3. Как мога да обединя тези mysql изрази

  4. създайте rest api url, за да се свържете с mysql база данни

  5. MySQL и C:недефинирана препратка към `[email protected]'|