«

»

Mag 04 2016

Stampa Articolo

Come ottimizzare il database MySQL

VI sono alcuni accorgimenti da adottare che possono rendere più veloci i CMS quali ad esempio WordPress o Joomla e tra questi l'ottimizzazione del database, definito il cuore pulsante dell'applicazione, è senz'altro da prendere in considerazione.

Avere un database frammentato o pieno di dati inutili rende lenta la navigazione di un utente in quanto il sistema deve andare a prendere le informazioni "qua e là" con il risultato di allungare il tempo di esecuzione delle query.

Inoltre col passare del tempo, il rischio di un crash delle tabelle più soggette a lettura/scrittura - come ad esempio le cartelle "session" che registrano le sessioni dei visitatori - possono causare il blocco di tutto il portale oltre che a stress ad un intero server. A questo proposito leggere questo articolo.

Ottimizzare un database MySQL è un’operazione molto simile a una deframmentazione e una pulizia di un disco su un sistema operativo Windows: con un disco ben organizzato e pulito, il sistema operativo lavora meglio e il proprio PC esegue le operazioni con maggiore velocità.

Per svolgere l’ottimizzazione del DB di WordPress, si può agire in due modi: manualmente dal pannello phpMyAdmin (solitamente raggiungibile dal pannello PLESK o altro pannello di gestione del proprio dominio) oppure affidandoci ad appositi plugin quali ad esempio, nel caso di wordpress, WP Optimize.

Affidarsi ai plugin per eseguire questa operazione di ottimizzazione non è sempre consigliabile: se da un lato semplificano tutta la procedura, sarebbe meglio evitarli in quanto le operazioni di ottimizzazione del database MySQL sono da effettuarsi saltuariamente - salvo indicazioni particolari è sufficiente una volta  ogni 1 o 2 settimane - e un plugin in più "succhia" altre risorse al sistema - e potrebbero essere anche una minaccia in più alla sicurezza del database -  ma sopratutto perché queste operazioni sono delicate e possono compromettere il buon funzionamento del CMS.

E' quindi preferibile "essere presente" quando si ottimizza un database MySQL, così che si possa intervenire immediatamente con un eventuale ripristino da backup nel caso che qualcosa "vada storto".

Di seguito illustriamo la procedura per eseguire una ottimizzazione di un database MySQL partendo dal pannello di gestione dominio PLESK nella versione 12.:

ATTENZIONE: è opportuno mettere offline il proprio CMS per evitare che questo interagisca con il database durante le operazioni di ottimizzazione. Ad esempio con Joomla si può mettere offline il sito entrando nel pannello di amministrazione Joomla e poi andando nella sezione SITO->CONFIGURAZIONE GLOBALE e quindi selezionare l'opzione "Sito offline", mentre per WordPress è necessario installare un apposito plugin come descritto in questo nostro altro articolo.

 

  1. Entrare in PLESK autenticandosi con le proprie credenziali:1-plesk-mysql
  2. Cliccare su "Siti Web e Domini" e successivamente su "Database":2-plesk-mysql
  3. Cliccare su "Webmin" corrispondente al database che si vuole amministrare:3-plesk-mysql
  4. Si aprirà in altra finestra phpMyAdmin mostrando tutte le tabelle del database:4-plesk-mysql
  5. Scendere a fondo pagine e spuntare il box "Seleziona tutto" e dal menù a tendina selezionare "Ottimizza tabella":
    5-plesk-mysql
  6. Se tutto va a buon fine dovrebbe apparire un report simile a questo:
    6-plesk-mysql
  7. Nel caso vi siano delle tabelle "in uso", cioè bloccate (vedere questo articolo) si possono riparare selezionandole e poi scegliendo dal menù a tendina "Ripara tabella"
    7-plesk-mysql
  8. Chiudere phpMyAdmin e riattivare il proprio CMS.

 

 

1 comment

  1. ioHacker

    Funziona alla grande! Grazie mille!

Lascia un commento

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

Puoi usare i seguenti tag ed attributi HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

*

Login

Register | Lost your password?