Database verkleinen met bijna 80%

Traditiegetrouw is de kerstvakantie een periode om de mail op te schonen of je bureau en je mappen op te ruimen en oude rommel weg te gooien (tenminste in mijn ‘werken voor een baas’ periode was dat altijd wel het geval).

Toen ik bezig was met wat standaard onderhoud op mijn WordPress websites viel me op dat de database van Wat Betekent? inmiddels bijna 380 MB groot was. Met een site die al sinds 2009 draait en meer dan 2600 berichten heeft is dat misschien niet heel raar, maar ik gewend ben dat een normale WordPress database meer rond de 20mb zit was het wel een beetje raar. In het verleden maakte ik vaak gebruik van de WP-Optimize plug-in maar die kwam niet verder dan 1 mb aan opschoning en verkleining. Dus dan maar ouderwets zelf in de database kijken.

De eerste stap was om tabellen die niet meer gebruikt werden op te ruimen. Hier moet je vooral denken aan oude plug-ins, die nog rommel achterlieten in de database. Dit scheelde weer een beetje, maar er zat niet veel data in, dus in MBs viel dit in het niets, maar opgeruimd was het wel. Dan maar eens kijken wat de grootste tabel is.

Het was vrij snel duidelijk dat het ging om 1 specifieke tabel die verantwoordelijk was voor ongeveer 70% van de database. Dit bleek de wp_options tabel te zijn. De eerste stap was om niet (meer) gebruikte custom fields te verwijderen: want wat je niet meer gebruikt heb je niet meer nodig en kan dus weg. Ook dit gaf niet veel meer ruimte en snelheid, maar wel een opgeruimd gevoel. Na wat zoek acties bleek dat er in een oude versie van een plug-on ook veel data in de wp_options gezet werden die bij een nieuwe versie niet meer nodig waar, wederom weer behoorlijk wat data wat weg kon. Op deze manier nog wat meer met queries lopen spelen en weer data van (oude) plug-ins verwijderd. Het gaf allemaal een lekker gevoel, maar de grote klapper moest nog komen.

Door het browser in de tabel kwam ik wat ‘transient’ opties tegen, dat leken me er vrij veel te zijn. Na wat verder zoeken bleken dat allemaal records te zijn die wegkonden, dus hoppa: in 1 klap 38000 records die onnodig waren. Dat was de grote klopper die ik zocht, en ik zat weer op ongeveer 75 Mb aan database.

Dit soort zaken zijn geen ‘klik en klaar’ activiteiten, maar kan wel altijd gedaan worden. En een kleinere database is natuurlijk fijn voor backups, maar het is zeker ook goed voor het dagelijkse gebruik van de website: het maakt het een en ander zeker sneller. En sneller is in dit geval altijd beter. Mocht je dus nog hulp nodig hebben bij het kleiner maken van je WordPress database, neem dan contact op.