Errore di connessione al database WordPress
Cos’è l’errore di connessione al database e perché compare
“Error establishing a database connection” è il messaggio che WordPress mostra quando non riesce nemmeno a raggiungere il database, prima ancora di poter leggere qualsiasi contenuto. È diverso da un database corrotto: qui il problema è a monte, nella comunicazione tra WordPress e il server database, non nell’integrità dei dati già salvati al suo interno.


Credenziali del database errate in wp-config.php
La causa più comune è che i dati di accesso al database salvati in wp-config.php (nome del database, utente, password) non corrispondano più a quelli reali: succede tipicamente dopo un cambio di hosting, un ripristino di backup su un ambiente diverso, o un intervento manuale sul database (ad esempio la password dell’utente database cambiata direttamente dal pannello hosting, senza aggiornare wp-config.php di conseguenza).
Il valore DB_HOST non corretto per l’hosting in uso
Una causa meno intuitiva, ma frequente su hosting gestiti o dopo una migrazione, riguarda il valore DB_HOST: molti tutorial generici indicano localhost come valore predefinito, ma alcuni hosting richiedono un indirizzo diverso (un IP specifico, un nome host dedicato, o una porta non standard) per raggiungere il server database, soprattutto quando database e sito web non girano sulla stessa macchina.
Il servizio database non è attivo o è sovraccarico
Un caso da citare, meno legato a un errore di configurazione, riguarda il server database stesso: se il servizio MySQL o MariaDB non è in esecuzione (per un riavvio del server, un aggiornamento lato hosting, o un sovraccarico temporaneo di risorse), WordPress mostra lo stesso identico messaggio, pur avendo credenziali corrette in wp-config.php.
Come capire la causa esatta
Prima di modificare wp-config.php, un paio di verifiche rapide aiutano a capire se il problema riguarda le credenziali o il servizio database stesso.
Verificare se il problema riguarda anche altri siti sullo stesso server
Se il tuo hosting ospita più siti (o se hai accesso a informazioni su altri siti sullo stesso server), verifica se anche loro mostrano lo stesso errore nello stesso momento: se sì, il problema è probabilmente il servizio database del server, non le credenziali specifiche del tuo sito, che restano corrette ma temporaneamente irraggiungibili.
Leggere un eventuale messaggio più specifico nel log
Se hai attivato WP_DEBUG_LOG in wp-config.php, il file debug.log può contenere un messaggio più dettagliato rispetto a quello generico mostrato in homepage, indicando ad esempio se il problema è “Access denied” (credenziali errate) o “Can’t connect” (server database irraggiungibile), una distinzione che orienta subito verso la causa corretta.
| Sintomo osservabile | Causa probabile |
|---|---|
| Errore comparso subito dopo un cambio di hosting o un ripristino di backup | Credenziali del database in wp-config.php non aggiornate al nuovo ambiente |
| Il log riporta “Access denied for user” | Nome utente o password del database errati |
| Il log riporta “Can’t connect to MySQL server” | Valore DB_HOST errato, o server database non raggiungibile da quell’indirizzo |
| Errore presente su tutti i siti ospitati sullo stesso server, non solo sul tuo | Servizio database del server non attivo o sovraccarico, non un problema di credenziali |
| Errore comparso senza alcuna modifica recente al sito | Probabile problema temporaneo lato server database, verificabile con l’hosting |
Risolvere l’errore di connessione: verificare e correggere le credenziali
Per il caso più comune — credenziali non aggiornate — la soluzione è confrontare i dati salvati in wp-config.php con quelli realmente attivi sul database, e correggerli se non coincidono.
Recuperare le credenziali corrette dal pannello hosting
Accedi al pannello hosting (cPanel o equivalente) e apri la sezione di gestione database: qui trovi il nome esatto del database, l’utente associato e, se necessario, puoi reimpostare la password se non la ricordi con certezza. Annota anche l’host di connessione indicato, se il pannello lo specifica esplicitamente.
Aggiornare wp-config.php con i valori corretti
Collegati via FTP/SFTP e apri wp-config.php. Verifica che le righe DB_NAME, DB_USER, DB_PASSWORD e DB_HOST corrispondano esattamente a quanto trovato nel pannello hosting, prestando attenzione a maiuscole, spazi e caratteri speciali nella password, che vanno copiati senza modifiche. Se DB_HOST non è localhost sul tuo hosting specifico, usa il valore indicato dal pannello o dalla documentazione dell’hosting.
Verificare la connessione e il ripristino del sito
Salva il file e ricarica il sito in una scheda anonima: se le credenziali erano davvero la causa, il sito torna a funzionare immediatamente, senza bisogno di altre operazioni sul database.
Le credenziali sono corrette ma l’errore persiste
Se hai verificato che tutti i valori in wp-config.php corrispondono esattamente a quelli del pannello hosting e l’errore rimane, il problema è probabilmente il servizio database stesso, non irraggiungibile per un errore di configurazione ma per un malfunzionamento temporaneo del server. In questo caso, contatta il supporto dell’hosting segnalando l’orario esatto in cui è comparso l’errore e, se disponibile, il messaggio specifico letto nel log: è un’informazione che permette all’hosting di verificare rapidamente lo stato del servizio database sul server, senza doverti far ripetere ulteriori tentativi lato tuo.
Non riesci a risolvere? Intervento tecnico a distanza
Se non sei sicuro di quali siano le credenziali corrette, se il pannello hosting non è chiaro su quale valore usare per DB_HOST, o se hai già verificato tutto senza risultato, continuare a modificare wp-config.php per tentativi rischia di introdurre altri errori di sintassi nel file. In questi casi è possibile richiedere una verifica diretta dell’accesso FTP/SFTP e del pannello hosting: si individua con precisione se la causa è nelle credenziali o nel servizio database del server, e si corregge senza ulteriori tentativi alla cieca.
Domande frequenti sull’errore di connessione al database WordPress
Questo errore significa che ho perso i miei contenuti? No: l’errore di connessione riguarda solo l’impossibilità di raggiungere il database in questo momento, non l’integrità dei dati salvati al suo interno, che restano intatti una volta ripristinata la connessione.
Qual è la differenza tra questo errore e un database corrotto? Questo errore compare quando WordPress non riesce nemmeno a stabilire la connessione al database; un database corrotto, invece, si manifesta con un messaggio diverso (“One or more database tables are unavailable”) dopo che la connessione è già avvenuta con successo, e riguarda l’integrità di tabelle specifiche.
Perché l’errore è comparso subito dopo un cambio di hosting? Perché le credenziali del database (nome, utente, password, host) sono specifiche di ogni ambiente hosting: dopo un trasferimento, wp-config.php continua a contenere i valori del vecchio hosting finché non vengono aggiornati manualmente.
Posso trovare le credenziali corrette da solo, senza contattare l’hosting? Sì, nella maggior parte dei pannelli hosting (cPanel e simili) la sezione di gestione database mostra nome del database e utente associato, e permette di reimpostare la password se necessario.
Quanto è comune che il problema dipenda dal server e non dalle mie credenziali? È meno comune del problema di credenziali, ma non raro: se l’errore compare senza alcuna modifica recente al sito e riguarda anche altri siti sullo stesso server, è il primo scenario da sospettare.
Vuoi risolverlo con un intervento diretto? Se l’errore di connessione persiste dopo aver verificato le credenziali, o non sei sicuro di come procedere, è possibile richiedere una verifica diretta dell’accesso al sito e al pannello hosting: si individua la causa esatta e si ripristina la connessione al database. → Richiedi un intervento tecnico.
