WordPress database optimaliseren
WordPress database optimaliseren
Je WordPress database groeit elke dag. Oude revisies, spam comments en transients vullen de database. Dit maakt je site trager. Met regelmatig database onderhoud houd je WordPress snel en efficiënt.
In deze gids leer je hoe je je WordPress database optimaliseert. Van handmatige optimalisatie tot automatisch onderhoud met plugins.
Waarom database optimaliseren?
De WordPress database slaat alles op: posts, pages, comments, settings en meer. Na maanden gebruik verzamelt zich veel onnodige data.
Problemen van een volle database:
- Langzamere queries en laadtijden
- Meer server resources nodig
- Tragere backups
- Hogere hosting kosten bij databases met quota
- Slechtere performance bij zoeken
Een schone database is sneller. Queries vinden data makkelijker in een opgeruimde structuur.
Wat verzamelt zich in een database?
- Post revisies (elke bewerking wordt opgeslagen)
- Spam en trash comments
- Verlopen transients (tijdelijke data)
- Post meta van verwijderde plugins
- Auto-drafts en ongebruikte tables
Regelmatig opschonen voorkomt dat je database onnodig groot wordt. Dit verbetert de performance aanzienlijk.
phpMyAdmin gebruiken
phpMyAdmin is een gratis tool voor database beheer. De meeste hosting providers bieden phpMyAdmin standaard aan.
Toegang tot phpMyAdmin:
- Log in op je hosting control panel
- Zoek naar phpMyAdmin (vaak bij Databases)
- Selecteer je WordPress database
- Nu zie je alle database tables
Database backup maken: Voor je begint met optimaliseren maak je een backup:
- Klik op je database naam
- Ga naar tab "Export"
- Kies "Quick" export method
- Selecteer "SQL" format
- Klik "Go" om te downloaden
Bewaar deze backup veilig. Bij problemen kun je de database herstellen.
Tables optimaliseren:
- Selecteer alle tables (vink checkbox aan)
- Scroll naar beneden bij "With selected"
- Kies "Optimize table"
- Klik "Go"
Dit reorganiseert de data en verwijdert fragmentatie. Vooral nuttig na veel delete acties.
Overhead controleren: Tables met overhead verspillen ruimte. In phpMyAdmin zie je de overhead kolom bij elke table. Optimaliseer tables met overhead om ruimte terug te winnen.
WP-Optimize plugin gebruiken
WP-Optimize is een populaire gratis plugin voor database optimalisatie. Het is veiliger en makkelijker dan handmatig werken.
WP-Optimize installeren:
- Ga naar Plugins → Add New
- Zoek "WP-Optimize"
- Installeer en activeer de plugin
- Ga naar WP-Optimize in je admin menu
Basis optimalisaties uitvoeren: WP-Optimize toont verschillende optimalisatie opties:
- Database tables optimaliseren
- Post revisies opschonen
- Auto-draft posts verwijderen
- Spam en trash comments verwijderen
- Verlopen transients verwijderen
- Pingbacks en trackbacks verwijderen
Vink de gewenste opties aan en klik "Run optimization". De plugin toont hoeveel ruimte je bespaart.
Automatische optimalisatie plannen: WP-Optimize kan wekelijks automatisch optimaliseren:
- Ga naar Settings tab
- Enable "Automatic weekly clean-up"
- Kies welke optimalisaties automatisch draaien
- Sla op
Voor drukke sites kun je dit dagelijks instellen. Voor kleine blogs is wekelijks genoeg.
Settings optimaliseren: Onder Settings → Database kun je meer configureren:
- Revisies beperken (bijv. max 5 per post)
- Auto-drafts uitschakelen
- Unapproved comments automatisch verwijderen
Voor meer over WordPress sneller maken en performance.
Post revisies opschonen
WordPress slaat elke wijziging aan posts en pages op. Na maanden schrijven heb je honderden revisies.
Revisies handmatig verwijderen: Via phpMyAdmin:
DELETE FROM wp_posts WHERE post_type = 'revision';
Let op: wp_ is de standaard table prefix. Check jouw prefix in wp-config.php.
Met WP-Optimize: Selecteer "Clean post revisions" en run. Je kunt instellen hoeveel revisies je wilt behouden.
Toekomstige revisies beperken: In wp-config.php:
define('WP_POST_REVISIONS', 5);
Dit beperkt revisies tot maximaal 5 per post. Of helemaal uitschakelen:
define('WP_POST_REVISIONS', false);
Voor de meeste sites zijn 3-5 revisies voldoende. Meer is meestal niet nodig.
Spam comments verwijderen
Spam comments vullen je database snel. Zelfs met Akismet verzamelen zich spam comments in de spam folder.
Handmatig via WordPress admin:
- Ga naar Comments
- Klik op "Spam" tab
- Selecteer alle spam comments
- Kies "Delete permanently"
Dit werkt maar duurt lang bij duizenden spam comments.
Via phpMyAdmin:
DELETE FROM wp_comments WHERE comment_approved = 'spam';
Automatisch met WP-Optimize: Selecteer "Remove spam and trashed comments" en run. Dit verwijdert alle spam en trash in één keer.
Spam voorkomen:
- Gebruik Akismet of andere anti-spam plugin
- Schakel comments uit op oude posts
- Gebruik CAPTCHA op comment forms
- Modereer comments voor ze verschijnen
Transients verwijderen
Transients zijn tijdelijke data die WordPress en plugins opslaan. Deze hebben een expiration date maar blijven soms langer staan.
Wat zijn transients? Transients cachen tijdelijke data zoals API responses, widget output of query results. Dit versnelt je site.
Probleem met transients: Verlopen transients worden niet altijd automatisch verwijderd. Ze vullen de wp_options table.
Transients verwijderen met WP-Optimize: Selecteer "Remove expired transients" en run. Dit verwijdert alleen verlopen transients, actieve blijven staan.
Handmatig via phpMyAdmin:
DELETE FROM wp_options WHERE option_name LIKE '_transient_%';
Let op: dit verwijdert alle transients, ook actieve. Plugins regenereren ze bij gebruik.
Beste praktijk: Verwijder alleen verlopen transients tenzij je problemen hebt. Actieve transients verwijderen heeft weinig zin want ze komen terug.
Post meta opschonen
Post meta slaat extra informatie op bij posts. Plugins voegen vaak post meta toe. Als je een plugin verwijdert blijft de meta data vaak staan.
Orphaned post meta vinden: Dit is meta van posts die niet meer bestaan:
DELETE FROM wp_postmeta WHERE post_id NOT IN (SELECT id FROM wp_posts);
Duplicates verwijderen: Soms ontstaan duplicate meta entries:
DELETE FROM wp_postmeta WHERE meta_id NOT IN (
SELECT MIN(meta_id) FROM wp_postmeta GROUP BY post_id, meta_key
);
Let op: test SQL queries eerst op staging. Verkeerde queries kunnen data verwijderen die je nodig hebt.
Plugin specifieke meta: Als je een plugin verwijdert check dan of deze meta data achterlaat. Zoek in wp_postmeta naar meta_key met de plugin naam.
Voor VPS hosting heb je meer controle over database optimalisatie.
Auto-drafts en trash verwijderen
WordPress slaat auto-drafts op tijdens het schrijven. Deze blijven soms staan na publiceren.
Auto-drafts verwijderen:
DELETE FROM wp_posts WHERE post_status = 'auto-draft';
Trash posts verwijderen: Posts in trash blijven 30 dagen staan:
DELETE FROM wp_posts WHERE post_status = 'trash';
Trash retention verlagen: In wp-config.php:
define('EMPTY_TRASH_DAYS', 7);
Nu wordt trash na 7 dagen automatisch leeggemaakt in plaats van 30.
Ongebruikte tables verwijderen
Plugins maken soms custom database tables. Na het verwijderen van plugins blijven deze tables vaak staan.
Ongebruikte tables vinden: In phpMyAdmin zie je alle tables. WordPress core tables beginnen met wp_:
- wp_posts
- wp_postmeta
- wp_users
- wp_usermeta
- wp_comments
- wp_commentmeta
- wp_terms
- wp_term_relationships
- wp_term_taxonomy
- wp_termmeta
- wp_options
Tables met andere namen zijn van plugins. Check of de plugin nog actief is voor je verwijdert.
Table verwijderen: Selecteer de table en klik "Drop". Let op: dit is permanent en niet terug te draaien.
Backup eerst: Export de table voor je verwijdert. Als je hem later nodig hebt kun je importeren.
Database repareren
Bij crashes of corruptie kun je de database repareren.
Via wp-config.php: Voeg toe aan wp-config.php:
define('WP_ALLOW_REPAIR', true);
Bezoek: http://example.com/wp-admin/maint/repair.php
Kies "Repair Database" of "Repair and Optimize Database". Verwijder de define regel na gebruik want de pagina is publiek toegankelijk.
Via phpMyAdmin: Selecteer beschadigde tables en kies "Repair table" bij "With selected".
Let op: repair alleen als je database errors hebt. Voor regulier onderhoud is optimize beter.
Regelmatig onderhoud plannen
Eenmalig optimaliseren helpt, maar regelmatig onderhoud is beter.
Wekelijks:
- Spam comments verwijderen
- Verlopen transients opschonen
- Auto-drafts verwijderen
Maandelijks:
- Database tables optimaliseren
- Post revisies opschonen
- Orphaned post meta verwijderen
Per kwartaal:
- Ongebruikte tables controleren
- Database backup maken
- Performance voor en na meten
Automatiseren met WP-Optimize: Stel automatische wekelijkse optimalisatie in. Dit draait in de achtergrond zonder dat je eraan denkt.
Cron job instellen: Voor geavanceerde users: maak een server cron job die WP-CLI gebruikt:
wp db optimize --path=/var/www/html
Dit is sneller dan plugins en gebruikt geen WordPress resources.
Database grootte monitoren
Houd je database grootte in de gaten om problemen vroeg te spotten.
Grootte checken in phpMyAdmin: Bij je database naam zie je de totale grootte. Check ook per table om te zien wat het meeste ruimte gebruikt.
Via WP-CLI:
wp db size --tables
Dit toont de grootte per table.
Alarm bij grote groei: Als je database plots veel groeit is er iets mis. Check welke table groeit en onderzoek waarom.
Verwachte groottes:
- Kleine blog (< 100 posts): 5-20 MB
- Medium site (1000 posts): 50-100 MB
- Grote site (10000+ posts): 200-500 MB
- Webshop (WooCommerce): 100-1000 MB
Veel groter? Dan is er waarschijnlijk onnodige data.
Database hosting overwegingen
Bij groeiende databases wordt je hosting keuze belangrijk.
Shared hosting limieten: Shared hosting heeft vaak database grootte limieten. Check je quota en upgrade bij nodig.
VPS of dedicated voor grote databases: Bij 500+ MB database is VPS hosting of dedicated vaak beter. Je krijgt dedicated database resources.
Managed WordPress hosting: Providers zoals Kinsta of WP Engine optimaliseren databases automatisch. Dit scheelt onderhoud.
Database caching: Redis of Memcached cachen database queries. Dit versnelt sites met grote databases aanzienlijk.
Check beste WordPress hosting voor geschikte providers.
Best practices
Maak altijd een backup: voor je de database optimaliseert. Een fout kan data verwijderen.
Test op staging: test optimalisaties eerst op een staging site. Niet direct op productie.
Optimaliseer niet te vaak: dagelijks is overkill voor kleine sites. Wekelijks of maandelijks is genoeg.
Monitor performance: meet laadtijden voor en na optimalisatie. Check of het echt helpt.
Let op dependencies: sommige plugins verwachten oude data. Test functionaliteit na cleanup.
Gebruik WP-CLI: voor grote databases is WP-CLI sneller dan plugins of phpMyAdmin.
Advanced optimalisatie tips
InnoDB optimaliseren: WordPress gebruikt InnoDB engine. Deze fragmenteert minder maar optimaliseer wel regelmatig:
OPTIMIZE TABLE wp_posts, wp_postmeta, wp_options;
Index toevoegen voor snellere queries: Op drukke sites kunnen extra indexes helpen:
CREATE INDEX meta_key_value ON wp_postmeta(meta_key, meta_value(10));
Let op: te veel indexes vertraagt INSERT en UPDATE queries.
Query cache: Check of query cache aan staat:
SHOW VARIABLES LIKE 'query_cache%';
Bij sommige hosts kun je dit zelf instellen in my.cnf.
Door je WordPress database regelmatig te optimaliseren houd je je site snel en efficiënt. Plan regulier onderhoud en automatiseer waar mogelijk. Met een schone database laadt je site sneller en gebruik je minder server resources.
Meer informatie: WordPress.org documentatie
Veelgestelde vragen
Is WordPress gratis?
WordPress zelf is gratis open-source software. Je betaalt alleen voor hosting, een domeinnaam, en eventuele premium themes of plugins die je wilt gebruiken.
Hoe moeilijk is WordPress om te leren?
WordPress is relatief eenvoudig te leren. De basisfuncties kun je binnen een paar uur onder de knie krijgen. Voor geavanceerde aanpassingen is meer tijd nodig.
Kan ik WordPress later verhuizen naar een andere host?
Ja, WordPress websites kunnen worden verhuisd naar een andere hosting provider. De meeste providers bieden hiervoor gratis hulp aan.
Was dit artikel nuttig?
Vergelijk direct hosting pakketten om de beste keuze voor jouw situatie te maken.
Gerelateerde artikelen
Wat is webhosting? Uitleg voor beginners
Ontdek wat webhosting is en hoe het werkt. Complete uitleg over servers, domeinen en verschillende hosting types voor beginners.
Wat is VPS hosting?
VPS hosting uitgelegd: wat is een virtual private server, voor wie is het geschikt en wat zijn de voordelen ten opzichte van shared hosting?
Wat is een SSL-certificaat?
Alles over SSL-certificaten: wat is SSL, waarom heb je het nodig en hoe herken je een beveiligde website? Essentieel voor elke website.
Wat is uptime bij webhosting?
Wat betekent uptime bij webhosting? Leer over uptime percentages, SLA garanties en waarom 99.9% uptime belangrijk is voor je website.
Hoeveel opslag heb ik nodig voor mijn website?
Ontdek hoeveel schijfruimte je echt nodig hebt voor je website. Praktische gids met voorbeelden per websitetype.