fb-pixel

Guida introduttiva alla gestione del database di WordPress

Vuoi sapere come funziona il database di WordPress, come è strutturato e come fare ad apportare delle modifiche?

In questa guida vedremo qual è il ruolo del database per un sito WordPress, comprenderemo la sua struttura e vedremo tramite quali dati sito e database sono collegati l’uno all’altro.

Parleremo anche di problemi di connessione al database e naturalmente, di come fare a modificarlo senza rischiare di fare errori.

Iniziamo!

Cos’è un database e perché è necessario per un sito WordPress

Come già saprai, WordPress è un CMS (sistema di gestione dei contenuti) che si basa su PHP e funziona grazie a un database MySQL.

Un database non è altro che un gruppo di informazioni che vengono memorizzate in maniera strutturata.

Nel caso di un sito, il database serve per memorizzare tutti i dati e le informazioni che mostriamo sul nostro sito. Per essere più precisi, tutti i commenti, gli articoli e le pagine del sito WordPress sono memorizzate all’interno del database.

Wordpress Org Logo

Stiamo parlando delle informazioni visibili, ma in realtà il database di WordPress contiene tutti, ma proprio tutti, i dati che permettono al CMS di funzionare.

In questa lista ci sono anche tutti i dati degli utenti, come anche la combinazione di username e password associate ad ogni utente. Naturalmente per preservare la sicurezza di WordPress, le password non vengono mai salvate in chiaro, ma sono crittografate.

Ma non solo, perché anche le impostazioni dei temi, dei plugin e del core sono in realtà delle entry conservate in specifiche tabelle del database.

Per capire meglio come funziona il database di WordPress, parleremo più nel dettaglio di come sono organizzate queste informazioni.

Prima però, chiariamo un altro punto. Come fanno il database e il sito a comunicare?

Come sono collegati il sito WordPress e il database?

Se hai installato WordPress prima di ora, avrai visto che un passaggio cruciale dell’installazione è quello in cui ci viene chiesto di collegare il database.

In questa fase dobbiamo inserire i dati del database ed è qui che si instaura il collegamento tra database e sito.

Configurazione WordPress

Trattandosi di una prima installazione, il database che colleghiamo è vuoto, e sarà proprio durante l’installazione che verrà creata la struttura del database con tutte le sue tabelle e le informazioni basilari.

Successivamente, creando articoli, aggiungendo nuovi utenti e cambiando le impostazioni, tutte queste modifiche verranno riportate nel database.

WordPress, infatti, preleva i dati conservati nel database per generare in modo dinamico le pagine. Ecco perché è fondamentale che il database sia sempre raggiungibile.

Problemi di connessione al database

Se hai letto fin qui, ti sarà chiaro che il database è fondamentale per il funzionamento di WordPress. Cosa succede, infatti, se si interrompe il collegamento tra database e sito?

Il sito non è più visibile.

Uno dei messaggi che può comparire in queste circostanze è “Errore nello stabilire una connessione al database“.

Errore Nello Stabilire Una Connessione Al Database WordPress

Nella maggior parte dei casi questo problema si risolve andando a verificare che le informazioni nel file wp-config.php siano corrette.

Queste sono le stesse informazioni che specifichiamo durante la fase di installazione del sito WordPress.

Se, però, trasferiamo un sito WordPress da un server all’altro, dobbiamo aggiornare queste informazioni per far sì che il database sia raggiungibile. Vediamo perciò dove si trovano questi dati.

Trovare le informazioni di connessione al database WordPress

Le informazioni basilari per collegare il database a WordPress sono queste:

  • Nome del database: il nome del database.
  • Nome utente: il nome dell’utente associato al database.
  • Password: la password dell’utente.
  • Host del database: la posizione del server.
  • Prefisso tabella: se abbiamo più installazioni di WordPress, si possono usare prefissi diversi. In genere il prefisso è “wp_”.
Dettagli Connessione Database WordPress

Una piccola nota sull’host del database, questo indica il server su cui risiede il database. Nella maggior parte dei casi sito e database sono sullo stesso server, questo vuol dire che la posizione è identica e che per indicarla basterà lasciare scritto “localhost”. In altre circostanze, però, il database potrebbe essere su un server remoto, in questo caso bisogna specificare l’indirizzo IP del server.

Se hai un hosting WordPress (o un condiviso) con SupportHost, l’host del database che devi usare è localhost.

Quando si inseriscono queste informazioni?

Se installiamo WordPress manualmente, siamo noi a creare il database e poi a riportare queste informazioni durante l’installazione di WordPress. Se, invece, usiamo uno strumento come Softaculous per semplificare l’installazione, non dobbiamo fare niente. Possiamo eventualmente scegliere di personalizzare il nome del database e il prefisso, ma possiamo anche lasciare le opzioni predefinite.

Quando però ci sono errori di connessione, dobbiamo assicurarci che queste informazioni siano corrette, per questo è necessario sapere dove trovare questi dati.

Se sei cliente di SupportHost, puoi gestire i database con comodità usando cPanel. cPanel ha un’interfaccia semplice e una procedura guidata che ti permette di creare i database.

Inoltre, puoi recuperare i dati di accesso al database in un click, aprendo “Database MySQL” e verificando le informazioni nella lista dei Database correnti.

Dati Di Accesso Database

Tramite file manager, puoi aprire il file wp-config.php e verificare che le informazioni combacino. Nel caso in cui le informazioni non dovessero corrispondere, le puoi modificare direttamente dall’editor del file manager.

Modificare File Wp Config Php Con File Manager Cpanel

I dati del database nel file wp-config.php sono riportati in questo modo:

/** The name of the database for WordPress */
define( 'DB_NAME', 'nome_database' );

/** MySQL database username */
define( 'DB_USER', 'username' );

/** MySQL database password */
define( 'DB_PASSWORD', 'password');

/** MySQL hostname */
define( 'DB_HOST', 'localhost' );

Come sono organizzati i dati in un database WordPress

Ora che abbiamo visto come sono fanno il sito e il database a comunicare, passiamo a una visione ancora più approfondita. Andiamo a vedere come sono conservate le informazioni all’interno del database di WordPress.

Ascolta anche la spiegazione dettagliata di Ivan che, in questo video, mostra la struttura del database e le relazioni che ci sono tra le tabelle.

Capire come funziona la struttura del database di WordPress, ti permette di capire meglio come vengono recuperati i dati.

Un’installazione di base di WordPress, genererà un database con 12 tabelle predefinite. Il numero di tabelle poi varierà in base anche ai plugin e ai temi che installerai.

Queste 12 tabelle sono quelle che corrispondono alle funzionalità di base di WordPress, quelle in comune tra tutti i siti.

Ogni tabella ha un nome che viene preceduto da un prefisso. Il prefisso di default è “wp_“, tuttavia come abbiamo visto anche prima, è possibile personalizzarlo quando si installa WordPress. Non preoccuparti, quindi se il prefisso del tuo sito è diverso da quello predefinito.

Una singola tabella contiene le informazioni di un singolo elemento, per esempio c’è la tabella “wp_post” che contiene le informazioni su tutti i tipi di post (articoli, pagine e custom post type quando presenti). C’è poi la tabella “wp_terms” che contiene, invece, i dati su categorie e tag.

Ovviamente ogni articolo ha associata una o più categorie ed eventuali tag. Queste tabelle, quindi, devono essere in relazione tra loro affinché nel sito queste informazioni, nel nostro esempio articolo e categoria, siano collegate.

Questo era solo un esempio per farti capire che tra le tabelle devono esistere delle relazioni. Il diagramma che segue, relativo alla versione 4.4.2 di WordPress, ti permette di capire meglio come le varie tabelle si legano l’una all’altra.

Relazione Tra Tabelle Database WordPress
Diagramma presente nel Codex di WordPress.org.

Per farti capire meglio che informazioni puoi trovare nel database, qui di seguito ho riassunto in maniera semplificata la struttura di base del database tabella per tabella.

Nome tabellaContenuto
wp_commentmetaContiene i meta dati dei commenti.
wp_commentsTutti i commenti, insieme ai dati su autore e data di pubblicazione sono conservati in questa tabella.
wp_linksInformazioni dei link. Sono legate alla funzione “link” che però non è più usata nelle versioni recenti di WordPress, può essere eventualmente sfruttata con un plugin come Link Manager.
wp_optionsQui sono conservate le impostazioni generali di WordPress e quelle relative a temi e plugin.
wp_postmetaContiene i meta dati di tutti i “post”. Per post si intendono tutti i contenuti di WordPress (anche pagine e menu per intenderci).
wp_postsAl suo interno troviamo il contenuto di articoli, pagine e menu presenti sul sito.
wp_termsContiene tutte le informazioni sulla tassonomia, quindi i nomi delle categorie e dei tag creati sul sito.
wp_termmetaContiene i meta dati della tassonomia.
wp_term_relationshipsCi sono le informazioni che permettono di mettere in relazione gli articoli con la tassonomia.
wp_term_taxonomyPermette di definire la gerarchia tra gli elementi della tassonomia (categorie e tag).
wp_usermetaConserva i meta dati relativi agli utenti del sito WordPress.
wp_usersIn questa tabella ci sono le informazioni sugli utenti registrati sul sito. Tra questi dati c’è ruolo, username e password. Le installazioni WordPress multisite hanno informazioni aggiuntive in questa tabella rispetto alle installazioni tradizionali.

Come gestire il database

Ora che è chiaro, almeno a grandi linee, come è organizzato il database di WordPress, vediamo come fare ad apportare modifiche.

Ricordati che il database è il cuore pulsante di un sito WordPress, qualsiasi modifica errata può comportare perdite irreversibili dei dati.

Per questo, ma non solo per questo, è importante sapere come fare un backup di un sito WordPress. Prima di fare qualsiasi modifica al sito e in particolare al database, assicurati di avere un backup completo. Completo, lo sottolineo, significa avere una copia sia dei file che del database.

Fatta questa doverosa premessa, andiamo avanti.

Ci sono diversi strumenti che ci permettono di gestire un database MySQL come appunto quello dei siti WordPress. Il più conosciuto e diffuso è phpMyAdmin ed è anche lo strumento che troverai a disposizione su SupportHost.

phpMyAdmin è intuitivo da usare e ci permette di accedere ai dati del database in sola visione e ovviamente anche di apportare le modifiche che vogliamo.

Cosa è possibile fare con phpMyAdmin?

Per un sito WordPress, ci sono diverse operazioni che possono essere eseguite direttamente dal database. Una delle più semplici è recuperare o modificare i dati degli utenti.

Per esempio potresti aver bisogno di modificare il nome utente che usi per fare login a WordPress.

In questo caso la modifica è piuttosto semplice, è sufficiente:

  1. aprire la tabella “wp_users”
  2. fare doppio click sul nome utente nella colonna “user_login”
  3. digitare il nuovo nome e premere Invio.
Modificare Nome Utente WordPress Da Database Phpmyadmin

In alternativa possiamo cliccare su “Modifica” e modificare uno o più campi per poi cliccare su “Esegui”, dopo aver completato le modifiche.

Questo è solo un esempio, ma le modifiche che possiamo fare direttamente dal database sono svariate. Nella guida pratica su come usare phpMyAdmin per gestire un sito WordPress trovi altre operazioni tra cui come modificare i ruoli utente, disattivare i plugin e cambiare il tema.

Modificare con cautela: WordPress e i dati serializzati

Come dicevamo, prima di fare una modifica al database di WordPress, dobbiamo assicurarci di avere un backup. Inoltre, prima di procedere, è importante sapere che non tutte le modifiche si possono fare direttamente in questo modo.

WordPress, infatti, conserva alcune informazioni nel database sotto forma di dati serializzati. Di conseguenza alcune informazioni non possono essere modificate con un semplice “trova e sostituisci” dal database perché finirebbero per essere corrotte.

Questo è particolarmente importante quando facciamo delle modifiche agli URL, per esempio quando decidiamo di spostare WordPress da locale a remoto, oppure quando facciamo un cambio di dominio. In casi come questi non possiamo modificare gli URL direttamente dal database, ma possiamo usare un plugin di migrazione tra cui Duplicator oppure usare WP-CLI per fare la sostituzione nel database senza corrompere i dati.

Se ancora non lo conosci, ti sarà utile sapere che WP-CLI è uno strumento da linea di comando che ti permette di gestire i siti WordPress. Su SupportHost è incluso in tutti i piani hosting.

Conclusioni

Il database è una delle componenti più importante di un sito WordPress visto che è ciò che permette al sito stesso di funzionare. Tutte le informazioni dai contenuti degli articoli ai dati degli utenti sono conservate nel database.

Come tutti i database anche quello di WordPress è costituito da dati organizzati in tabelle e messi in relazione tra loro. È grazie a questo sistema ben organizzato che le informazioni sono accessibili in maniera semplice e rapida.

Nella maggior parte delle operazioni che svolgiamo quotidianamente su un sito WordPress non abbiamo bisogno di interfacciarci con il database. Se si utilizza WordPress, però, è importante sapere come funziona la struttura del database e come database e sito sono collegati.

Infatti, quando ci sono problemi o operazioni particolari da fare come un trasferimento, può essere necessario intervenire sul database. In questi casi dobbiamo ricordarci che bisogna procedere con attenzione per non rischiare di fare danni irreparabili al sito.

Con SupportHost puoi arginare questo tipo di rischi, grazie ai backup giornalieri degli ultimi 30 giorni e alla funzione di staging che ti permette di clonare il sito e lavorare su un ambiente sicuro.

Adesso tocca a te: ti è mai capitato di dover fare modifiche al database? Hai avuto difficoltà? Facci sapere come è andata nei commenti.


Prova gratis e senza impegno uno dei nostri piani hosting per 14 giorni. Non è richiesto nessun dato di pagamento!

Commenti

Lascia un commento

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