Op mijn server met jouw configuratie zijn mijn basisprestaties als volgt:
- InnoDB:5.71s
- MijnISAM:2.50s
Dit is niet slecht in mijn boek, maar het kan wat aanpassingen gebruiken.
Uw InnoDB-prestaties kunnen op verschillende fronten worden verbeterd:
Verhoog innodb_buffer_pool_size
- Dit is de allerbelangrijkste InnoDB-configuratievariabele. Idealiter zou dit 70-80% van uw beschikbare RAM moeten zijn op een server die speciaal is bedoeld voor MySQL en InnoDB.
- Toenemende
innodb_buffer_pool_size
op mijn server naar 2G (meer dan genoeg voor deze test) verlaagd de InnoDB-tijd tot 4.60s
Maak id de PRIMAIRE SLEUTEL
- InnoDB clustert zijn gegevens op basis van PRIMAIRE SLEUTEL. Als u er geen declareert, genereert InnoDB impliciet een willekeurige. Het hebben van een sequentiële primaire sleutel (id) is sneller dan een willekeurige.
- Het maken van id de PRIMARY KEY op mijn server verlaagd de InnoDB-tijd tot 3.80s
Upgrade uw MySQL/InnoDB
Met MySQL 5.1+ ondersteunt MySQL pluggable storage-engines. Met name de nieuwe InnoDB-plug-in .
De nieuwe InnoDB-engine biedt tal van prestatieverbeteringen die mogelijk significante invloed hebben op dit specifieke type zoekopdracht.
Van belang:
- Vanaf MySQL 5.1.38 is de InnoDB-plug-in opgenomen in MySQL
- Vanaf MySQL 5.1.43 is de InnoDB-plug-in niet alleen inbegrepen, maar is deze ook de standaardengine voor MySQL