database wordpress

WordPress può essere sicuramente utile per realizzare un negozio online, non a caso abbiamo scritto un’apposita guida su come farlo. Quello che bisogna sempre ricordare, però, è che di base WordPress nasce come CMS per i blog, quindi farne un ecommerce costituisce sempre un po’ una forzatura, che diventa particolarmente evidente nel momento in cui il negozio inizia ad avere centinaia di visite al minuto e necessita di gestire numerose operazioni in contemporanea.

Abbiamo affrontato un caso del genere qualche tempo fa: un nostro cliente con un negozio online molto visitato aveva iniziato a riscontrare delle difficoltà, in particolare nella gestione del backend, dovendo effettuare contemporaneamente sincronizzazioni multiple dei vari prodotti. Dopo aver analizzato bene la situazione e aver constato l’inefficacia di un semplice aumento delle risorse, abbiamo eseguito un intervento sul database che si è rivelato un toccasana e ha permesso al cliente di continuare a lavorare a pieno ritmo senza più ostacoli di questo tipo.

Nello specifico, abbiamo cambiato il motore di archiviazione di alcune tabelle di WordPress da MyISAM a InnoDB e in questo articolo vogliamo spiegare anche a te come fare la stessa cosa.

Prima di andare avanti, però, ti ricordiamo che in questi casi è sempre fondamentale eseguire in maniera preventiva un backup del database e possibilmente mettere il sito in modalità manutenzione durante l’intervento.

Differenze tra MyISAM e InnoDB

Il motivo per cui uno switch del motore di archiviazione può aiutare ad ottimizzare il database, risiede essenzialmente nel loro diverso funzionamento.

MyISAM richiede poche risorse, ma può eseguire il blocco solo a livello dell’intera tabella e non supporta chiavi esterne e transazioni (quindi commit e rollback).

InnoDB è un un po’ più esigente in termini di risorse, ma supporta transazioni, chiavi esterne e vincoli di relazione, con la possibilità di creare database relazionali e transazionali, ed ha il blocco a livello di riga, permettendo così l’accesso in parallelo sulla stessa tabella.

Per semplificare: MyISAM è utile in casi di risorse limitate e in cui le operazioni di lettura del database sono maggiori di quelle di scrittura, mentre ad esempio nel caso degli ecommerce, in cui vengono eseguite molte operazioni di scrittura, è meglio InnoDB, che inoltre è più affidabile poiché fa uso dei registri transazionali per l’autorecovery.

Come cambiare motore del database

Ottimizzare il database del tuo WordPress cambiandone il motore potrebbe sembrare un’operazione complessa, ma grazie all’intuitività del pannello di controllo Netsons e le nostre istruzioni riuscirai a farlo in pochi clic, soprattutto considerando che, anche se hai un sito molto grande, dovrai intervenire soltanto su alcune tabelle.

Ancora una volta, ti raccomandiamo di eseguire un backup del database prima di procedere alle modifiche, per evitare qualsiasi inconveniente.

Per prima cosa, accedi alla tua Area Clienti su www.netsons.com, vai nella sezione Hosting (1) e clicca sull’icona arancione (2) situata alla destra del nome di dominio. Così facendo accederai al pannello di controllo cPanel.

cpanel accesso area clienti

All’interno di cPanel, cerca la scheda Database e clicca su phpMyAdmin, ovvero l’applicazione che ti permette di gestire il database.

cpanel phpmyadmin

Ora, alla tua sinistra, clicca sul database (1) che corrisponde al tuo sito: si aprirà l’elenco di tutte le tabelle che lo compongono.

phpmyadmin seleziona database

Le tabelle da prendere in considerazione sono:

  • wp_options
  • wp_posts
  • post_meta
  • wp_terms
  • wp_termmeta

Nota bene: “wp_” è il prefisso standard di WordPress, che può essere modificato in fase di installazione per rendere il sito più sicuro, quindi anche se non vedi “wp_” ma (per fare un esempio) “abc_” prima dei nomi delle tabelle menzionate, sappi che si tratta delle stesse.

Per cambiare il motore di archiviazione di una tabella, selezionala e poi clicca sul pulsante Operations che trovi in alto.

phpmyadmin operations

A questo punto, dove vedi scritto Store Engine, se il motore utilizzato è MyISAM sostituiscilo con InnoDB e completa l’operazione cliccando sul tasto Go che vedi in basso a destra della scheda. Ripeti l’operazione per ciascuna delle tabelle sopracitate.

Se hai dei dubbi o ti occorre assistenza, puoi aprire un ticket dalla tua Area Clienti, chiamarci al numero 085.4510052 oppure scriverci all’indirizzo info@netsons.com.


Rimani aggiornato su tutte le novità e gli eventi!