På min server med din konfiguration er min basisydelse som følger:
- InnoDB:5.71s
- MyISAM:2,50s
Dette er ikke dårligt i min bog, men det kan bruge nogle justeringer.
Din InnoDB-ydeevne kan forbedres på flere fronter:
Forøg innodb_buffer_pool_size
- Dette er den vigtigste InnoDB-konfigurationsvariabel. Ideelt set bør det være 70-80 % af din tilgængelige RAM på en server dedikeret til MySQL og InnoDB.
- Øger
innodb_buffer_pool_size
på min server til 2G (mere end nok til denne test) faldet InnoDB-tiden til 4,60s
Gør id til den PRIMÆRE NØGLE
- InnoDB klynger sine data baseret på PRIMÆR NØGLE. Når du ikke erklærer en, genererer InnoDB en tilfældig implicit. At have en sekventiel primær nøgle (id) er hurtigere end en tilfældig.
- At gøre id'et til den PRIMÆRE NØGLE på min server nedsat InnoDB-tiden til 3,80s
Opgrader din MySQL/InnoDB
Med MySQL 5.1+ understøtter MySQL pluggbare lagermotorer. Nærmere bestemt det nye InnoDB-plugin .
Den nye InnoDB-motor giver mange adskillige ydeevneforbedringer, der kan har betydelig indflydelse på denne særlige type forespørgsel.
Bemærk:
- Fra og med MySQL 5.1.38 er InnoDB-pluginet inkluderet i MySQL
- Fra og med MySQL 5.1.43 er InnoDB-plugin'et ikke kun inkluderet, men er standardmotoren for MySQL