het probleem met een tabel met records van 1 mille is niet de AND id > 34000 LIMIT 10
of LIMIT 34000, 10
dat is afhankelijk van de structuur en de rest van de query. I.E, je hebt index, PK, FK nodig om de zoekopdracht te versnellen, daarnaast zal een Order by het waarschijnlijk vertragen, zoek like '%text%'
het zal uw zoekopdracht LANGZAAM maken. Het is ook aan de Engine van de tafel
Verwacht dus niet dat het veranderen van limiet 10 een enorm verschil zal maken. Er zijn een aantal hulpmiddelen die u kunnen helpen een 'betere' zoekopdracht te bepalen, maar niet alle zoekopdrachten werken hetzelfde, dus verwacht niet de 'beste oplossing' omdat deze niet bestaat.
U kunt Toon create table
. gebruiken of Describe select ......
of explain
om te zien wat er aan de hand is, of gebruik het commando benchmark
om de geschatte tijd te zien van een functie die u toepast om deze te verbeteren
BEWERKEN:
Sommige tools voor MySQLI raden u aan dit programma te bekijken dat u zal helpen bij dit onderdeel van de prestaties.
- Mysqlslap (het is als een benchmark, maar je kunt het resultaat meer aanpassen).
- SysBench (test CPU-prestaties, I/O-prestaties, mutex-conflict, geheugensnelheid, databaseprestaties).
- Mysqltuner (hiermee kunt u algemene statistieken, Storage Engine Statistics, prestatiestatistieken analyseren).
- mk-query-profiler (voer analyse uit van een SQL-instructie).
- mysqldumpslow (goed om te weten dat zoekopdrachten problemen veroorzaken).