Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Dwa zduplikowane indeksy z tymi samymi kolumnami

Tak, to może mieć wpływ.

Oczywiście te dwa indeksy zajmują dodatkowe miejsce na dysku, a także w pamięci, jeśli są używane.

Ale powodują również, że optymalizator zapytań wykonuje więcej pracy w celu obliczenia korzyści z każdego indeksu podczas każdego SELECT. Im więcej masz indeksów, tym więcej przypadków musi porównać. Dlatego opłaca się wyeliminować naprawdę nadmiarowe indeksy.

Jak zauważyli również inni, indeksy są aktualizowane podczas operacji INSERT/UPDATE/DELETE, więc im więcej masz indeksów, tym większe obciążenie to reprezentuje. Indeksy, które są często używane, uzasadniają własne obciążenie, ale zduplikowane indeksy pochłaniają więcej kosztów bez dodatkowych korzyści do dopasowania.

Jeśli jesteś zainteresowany, Percona Toolkit ma narzędzie pt-duplicate-key-checker który przeszukuje wszystkie Twoje tabele pod kątem takich przypadków.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Błąd w MySQL podczas ustawiania domyślnej wartości DATE lub DATETIME

  2. Wstawianie zmiennych MySQL za pomocą Pythona, nie działa

  3. Przetwarzaj JSON do mySQL

  4. Jak wstawić ciąg do innego ciągu w MySQL za pomocą INSERT()

  5. Czy używać SET NAMES