sql >> Database >  >> RDS >> Mysql

mysql te veel indexen?

Gegevens ophalen -- SELECT-instructies.

Gegevensmanipulatie -- INSERT, UPDATE, DELETE statements.

Als u denkt dat u betere prestaties voor het ophalen van gegevens wilt.

Op tabellen waar veel gegevens worden gemanipuleerd -- invoegen, bijwerken...

Query's moeten de volgorde van kolommen adresseren als het gaat om een ​​dekkende index (een index op meer dan één kolom), van links naar rechts in de definitie van de indexkolom. De kolomvolgorde in de instructie doet er niet toe, alleen die van de kolommen 1, 2 en 3 - een instructie moet een verwijzing naar kolom 1 hebben voordat de index kan worden gebruikt. Als er alleen een verwijzing naar kolom 2 of 3 is, kan de dekkingsindex voor 1/2/3 niet worden gebruikt.

In MySQL kan slechts één index per SELECT/statement in de query worden gebruikt (subqueries/etc worden gezien als een apart statement). En er is een limiet aan de hoeveelheid ruimte per tabel die MySQL toestaat. Bovendien maakt het uitvoeren van een functie op een geïndexeerde kolom de index onbruikbaar - IE:

WHERE DATE(datetime_column) = ...


  1. Hoe MySQL-weergaven te optimaliseren

  2. WordPress-toegang

  3. Hoge beschikbaarheid beheren in PostgreSQL – Part II:Replication Manager

  4. Tabellen koppelen met behulp van de Room-database in Android Studio