Errore nello stabilire una connessione al database in WordPress: cosa significa

Il vostro sito mostra una sola riga: «Errore nello stabilire una connessione al database». WordPress non è riuscito ad aprire il database che contiene pagine, impostazioni e account. I vostri contenuti sono di solito intatti: questa guida spiega come capire quale delle quattro cause possibili è in gioco, e come correggerla.

Pubblicato il 5 ottobre 2026 Di Lettura: 8 minuti

Tutte le guide

In breve

  1. Il messaggio significa che WordPress non è riuscito a collegarsi al server del database con i dati presenti in wp-config.php. I vostri contenuti sono di solito intatti.
  2. Verificate prima che il server del database funzioni: pagina di stato del provider, altri siti dello stesso account, phpMyAdmin.
  3. Confrontate i quattro valori DB_NAME, DB_USER, DB_PASSWORD e DB_HOST di wp-config.php con quelli del pannello di hosting.
  4. Testate queste credenziali fuori da WordPress: il messaggio di errore di MySQL indica la causa esatta.
  5. Se la bacheca parla di tabelle non disponibili, avviate lo strumento di riparazione di WordPress, poi disattivatelo.
  6. Se l'errore va e viene, guardate il carico: troppe connessioni simultanee, o bot che sommergono il sito.

Che cosa dice il messaggio

Per ogni pagina che serve, WordPress apre una connessione al suo database MySQL o MariaDB con quattro valori scritti in wp-config.php, nella cartella principale del sito:

wp-config.php
define( 'DB_NAME', 'nome_database' );
define( 'DB_USER', 'nome_utente' );
define( 'DB_PASSWORD', 'password' );
define( 'DB_HOST', 'localhost' );

«Errore nello stabilire una connessione al database» significa che questa connessione non è riuscita. Quattro cause lo provocano: credenziali che non corrispondono più, un server di database fermo o irraggiungibile, un server sovraccarico, oppure un database danneggiato. Le sezioni che seguono le passano in rassegna dalla più semplice da verificare alla più rara.

1. Il server del database risponde?

Se il problema è del server, aprite un ticket presso il provider, indicando l'ora di inizio del guasto e il messaggio esatto. Nel frattempo non c'è nulla da modificare sul sito.

2. Le credenziali di wp-config.php sono giuste?

È la causa più frequente dopo un trasferimento del sito, un cambio della password del database nel pannello di hosting o il ripristino di un backup. Confrontate i quattro valori di wp-config.php con la sezione dei database del pannello di hosting:

Una password che contiene un apice singolo (') tronca la stringa PHP che la racchiude in wp-config.php. Fatelo precedere da una barra rovesciata (\'), oppure scegliete una password senza apice singolo.

Testare le credenziali fuori da WordPress

WordPress mostra un messaggio generico. MySQL, invece, dice esattamente che cosa non va. Due modi per chiederglielo, con i valori di wp-config.php:

Da riga di comando, se avete un accesso SSH

Terminale (la password viene chiesta subito dopo)
mysql -h localhost -u nome_utente -p nome_database

Con WP-CLI, wp db check legge direttamente wp-config.php e controlla le tabelle con quelle credenziali.

Con un file PHP temporaneo

Caricate questo file nella cartella principale del sito con un nome difficile da indovinare, apritelo nel browser, poi eliminatelo subito: contiene la password del database.

test-connessione-a7k2.php
<?php
mysqli_report(MYSQLI_REPORT_OFF);
$link = @mysqli_connect('localhost', 'nome_utente', 'password', 'nome_database');
echo $link ? 'Connessione riuscita' : 'Errore: ' . mysqli_connect_error();

La prima riga conta: da PHP 8.1, una connessione che non riesce solleva un'eccezione per impostazione predefinita, e la pagina resterebbe bianca invece di mostrare il messaggio di MySQL.

MySQL rispondeLa causaLa correzione
Access denied for user 'nome_utente'@'localhost' (using password: YES)La coppia utente e password viene rifiutata, oppure l'utente non può collegarsi da questo host.Reimpostare la password nel pannello e copiarla in DB_PASSWORD; verificare DB_USER.
Access denied for user 'nome_utente'@'localhost' to database 'nome_database'L'utente si collega, ma non ha permessi su questo database.Associare l'utente al database nel pannello di hosting, con tutti i privilegi.
Unknown database 'nome_database'La connessione funziona, ma nessun database ha quel nome.Correggere DB_NAME, prefisso compreso; verificare che il database esista ancora.
Too many connectionsIl server ha raggiunto il numero massimo di connessioni simultanee.Vedere la sezione sugli errori intermittenti.
Connection refused o No such file or directory (codice 2002 da PHP), Can't connect to MySQL server (da riga di comando)Nessun server risponde a quell'indirizzo: il server è fermo, oppure DB_HOST è sbagliato.Verificare DB_HOST nel pannello; altrimenti, contattare il provider.
Connessione riuscitaLe credenziali sono giuste.Guardare il database stesso: sezione successiva.

3. Un database danneggiato: lo strumento di riparazione

Quando le credenziali sono giuste ma alcune tabelle sono danneggiate, il sito pubblico mostra lo stesso errore di connessione, e la bacheca un messaggio più preciso: «Una o più tabelle del database non sono disponibili. Il database potrebbe avere bisogno di essere riparato.» WordPress fornisce uno strumento apposito. Aggiungete questa riga a wp-config.php:

wp-config.php
define( 'WP_ALLOW_REPAIR', true );

Poi aprite https://www.vostro-sito.com/wp-admin/maint/repair.php e avviate «Riparazione database». Togliete la riga appena terminata la riparazione: finché è presente, quella pagina è raggiungibile da chiunque, senza accesso.

Prima di qualsiasi riparazione, esportate il database (wp db export, oppure la scheda Esporta di phpMyAdmin). Se la riparazione non riesce, il provider può ripristinare il database dai suoi backup.

4. Un errore che va e viene: il carico

Un errore che compare in certi momenti e poi scompare da solo indica un server sovraccarico più che un'impostazione sbagliata. Le cause abituali:

Le soluzioni: bloccare i tentativi di accesso abusivi, aggiungere una cache delle pagine, disattivare xmlrpc.php se nessuna applicazione lo usa, e chiedere al provider i log dell'ora dell'errore.

Un sito web di cui gestiamo noi la parte tecnica

Con Serenity by Simafri, creiamo il vostro sito web professionale, lo ospitiamo, lo proteggiamo e lo manteniamo aggiornato. Voi ci scrivete, noi ci occupiamo di tutto. Nome di dominio ed email professionale inclusi.

Scoprire Serenity by Simafri

Domande frequenti

L'errore di connessione al database ha cancellato il mio sito?

Di solito no. Il messaggio dice che WordPress non è riuscito a collegarsi al database, non che il database è sparito. Se phpMyAdmin mostra ancora le tabelle del sito, pagine, articoli e impostazioni sono al loro posto.

Perché l'errore è comparso dopo il trasferimento del sito?

Perché il nuovo hosting usa credenziali del database diverse: nome del database, utente, password e a volte indirizzo del server. Copiate i valori del nuovo pannello in DB_NAME, DB_USER, DB_PASSWORD e DB_HOST in wp-config.php.

Devo reinstallare WordPress per correggere questo errore?

Reinstallare WordPress non cambia né le credenziali di wp-config.php né lo stato del server del database, che sono all'origine di questo messaggio. Testate prima le credenziali, poi il server, poi l'integrità delle tabelle.

L'errore compare solo in certi giorni: da dove viene?

Da un sovraccarico più che da un'impostazione: troppe connessioni simultanee, un picco di traffico o dei bot. I log di accesso e i dati sul consumo di risorse del pannello di hosting mostrano che cosa succedeva al momento dell'errore.

Contattaci