Database MySQL WordPress: Ottimizzazione e Best Practices 2026

Tempo di lettura: 6 minuti
Pubblicato il 13 Aprile 2026
MySQL database WordPress optimization query performance server

Il database MySQL è la spina dorsale di WordPress: ogni contenuto, impostazione e dato utente risiede al suo interno. Con il tempo si accumula inevitabilmente un “gonfiore” di dati inutili — revisioni, transient scaduti, commenti spam, dati orfani di plugin disinstallati — che rallenta le query e aumenta il consumo di risorse server. In questa guida trovi tutte le tecniche per tenere il database WordPress snello ed efficiente nel 2026.

Tabelle WordPress default
12
Plugin pulizia consigliato
WP-Optimize
Object caching
Redis / Memcached
Engine consigliato
InnoDB
Frequenza manutenzione
Mensile
Difficoltà
Media

La Struttura del Database WordPress

WordPress usa MySQL (o MariaDB, compatibile) con 12 tabelle principali. Le più rilevanti per le performance:

  • wp_posts — tutti i post, pagine, prodotti WooCommerce e revisioni. Tende a crescere enormemente su siti con molti contenuti.
  • wp_postmeta — metadati dei post. Su WooCommerce può raggiungere milioni di righe.
  • wp_options — impostazioni sito, opzioni plugin, transient. La colonna autoload è critica: i dati con autoload=yes vengono caricati ad ogni richiesta PHP.
  • wp_usermeta — metadati utenti; si gonfia su siti con molti iscritti.

I 5 Principali Problemi di Performance

1. Revisioni degli Articoli

Ogni modifica a un post genera una revisione nella wp_posts. Un sito attivo può accumulare centinaia di revisioni per articolo. Soluzione: limita le revisioni future aggiungendo define('WP_POST_REVISIONS', 5); al wp-config.php. Rimuovi quelle esistenti con WP-Optimize o phpMyAdmin.

2. Transient Scaduti nella wp_options

I transient sono dati temporanei usati dai plugin. Teoricamente si eliminano alla scadenza, ma si accumulano spesso nella wp_options rallentando ogni richiesta. Se hai Redis come object cache, i transient vengono automaticamente memorizzati in Redis invece che nel database, eliminando il problema alla radice.

3. Dati di Autoload Eccessivi

Verifica con la query SQL: SELECT SUM(LENGTH(option_value)) FROM wp_options WHERE autoload='yes';. Se supera 800KB, ogni page load porta un overhead significativo. Disabilita i plugin non necessari e controlla la documentazione di quelli pesanti.

4. Tabelle con Engine MyISAM

InnoDB è il default di WordPress dal 2015, ma plugin datati possono creare tabelle MyISAM. Differenza cruciale: MyISAM blocca l’intera tabella durante le scritture; InnoDB blocca solo la singola riga. Su WooCommerce ad alto traffico, MyISAM causa colli di bottiglia gravi. Verifica in phpMyAdmin e converti con ALTER TABLE nome_tabella ENGINE=InnoDB;.

5. Dati Orfani

Postmeta senza post associato, termini senza contenuto, dati di plugin disinstallati. Occupano spazio e rallentano le JOIN. WP-Optimize include la pulizia dei dati orfani; in alternativa, query SQL manuali su phpMyAdmin permettono una pulizia chirurgica.

Come Ottimizzare: WP-Optimize

WP-Optimize — Funzionalità incluse

  • Rimozione revisioni (mantieni le N più recenti)
  • Pulizia commenti spam e nel cestino
  • Rimozione transient scaduti
  • OPTIMIZE TABLE per recuperare spazio frammentato
  • Pulizia dati orfani di postmeta e usermeta
  • Pianificazione automatica settimanale o mensile

Backup prima di tutto: qualsiasi operazione di pulizia del database deve essere preceduta da un backup completo. WP-Optimize lo ricorda ad ogni operazione; non ignorare questo avviso.

Object Caching: Redis per Eliminare le Query Ripetute

Redis memorizza in RAM i risultati delle query MySQL più frequenti: invece di eseguire la stessa query 50 volte per pagina (comune su WooCommerce), il risultato viene letto dalla memoria in microsecondi. Riduzione tipica del carico database: 40–70% su siti WooCommerce.

Provider con Redis preconfigurato
Kinsta Incluso + APM per query monitoring
WP Engine Object Cache Pro incluso
Cloudways Redis su tutti i piani managed
SiteGround GoGeek+ e Cloud
Hostinger Business e piani Cloud

Identificare Query Lente: Slow Query Log

Per problemi non risolvibili con la pulizia standard, il slow query log di MySQL registra tutte le query che superano una soglia configurabile. Su VPS, si abilita in my.cnf con slow_query_log = ON e long_query_time = 0.2. Su hosting managed, il provider lo attiva su richiesta. L’istruzione EXPLAIN di MySQL rivela poi se ci sono full table scan o indici mancanti.

Piano di Manutenzione Database

La manutenzione del database non è un’operazione una tantum ma una routine periodica. Con WP-Optimize pianifica: settimanale (transient, commenti spam, cestino) e mensile (revisioni eccessive, ottimizzazione tabelle, dati orfani). Prima di ogni aggiornamento major: backup completo del database.

Verdetto FindHost — Database MySQL 2026

Il database WordPress si gonfia inevitabilmente nel tempo: revisioni, transient e dati orfani accumulati rallentano ogni query. WP-Optimize con pianificazione mensile automatica risolve il 90% dei casi senza richiedere conoscenze SQL.

Per siti WooCommerce o ad alto traffico, Redis è l’intervento più impattante: riduce il carico database del 40–70% memorizzando i risultati in RAM. Kinsta include Redis e APM per il monitoring delle query lente già nel piano base.

Domande Frequenti (FAQ)


Con quale frequenza ottimizzare il database WordPress?

Per un blog con pubblicazioni regolari, una pulizia mensile con WP-Optimize è sufficiente. Per un e-commerce WooCommerce, la pulizia settimanale automatica (transient, sessioni scadute, revisioni) è raccomandata. La routine automatica di WP-Optimize semplifica la gestione senza intervento manuale.


È sicuro eliminare le revisioni degli articoli in WordPress?

Sì, le revisioni sono copie storiche e non influiscono sul contenuto pubblicato. Puoi limitare le revisioni future con define('WP_POST_REVISIONS', 5); in wp-config.php. Fai sempre un backup prima di eliminarle in blocco dal database.


InnoDB o MyISAM: quale engine per WordPress?

InnoDB in ogni caso. WordPress usa InnoDB di default dal 2015. MyISAM blocca l’intera tabella durante le scritture: su siti ad alto traffico causa colli di bottiglia gravi. Se hai tabelle MyISAM verificabile in phpMyAdmin, convertile con ALTER TABLE nome_tabella ENGINE=InnoDB;.


Redis migliora davvero le performance del database WordPress?

Sì, in modo significativo per siti dinamici. Redis memorizza in RAM i risultati delle query più frequenti: invece di eseguire la stessa query 50 volte per pagina, il risultato viene letto dalla memoria in microsecondi. Su WooCommerce, la riduzione del carico database è tipicamente del 40–70%.


Cosa sono i transient WordPress e perché rallentano il sito?

I transient sono dati temporanei memorizzati dai plugin nella wp_options con una data di scadenza. Si accumulano spesso senza essere rimossi. Poiché la wp_options viene letta integralmente ad ogni richiesta PHP, migliaia di transient scaduti rallentano ogni pagina. Con Redis attivo vengono memorizzati in RAM invece che nel database, eliminando il problema.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Non sai quale hosting fa per te?

Chiedilo alla nostra IA!

Ti fa qualche domanda e in un minuto ti dice qual è il piano giusto per il tuo progetto.