Inizio
/
Assistenza sito web
/
Statistiche ed errori
/
Come correggere “Errore nello stabilire una connessione al database" in WordPress

Come correggere “Errore nello stabilire una connessione al database" in WordPress

“Errore nello Stabilire una Connessione al Database” è un errore che ti dice che il tuo sito web WordPress non può connettersi al suo database. Può sembrare difficile da risolvere, ma fortunatamente ci sono solo una manciata di motivi che possono causarlo, e con un po’ d’indagine e troubleshooting, è possibile risolvere facilmente il problema.

Questa guida spiegherà cosa significa “Errore nello Stabilire una Connessione al Database”, delineerà le cause più comuni e come risolverle.

Cosa significa “Error Establishing a Database Connection” in WordPress?

Prima di esaminare l’errore, dobbiamo capire come funziona WordPress. Come la maggior parte delle applicazioni CMS (Content Management System), è costituito da due parti integranti: i file e un database.

I file sono la base del sito e contengono le funzionalità principali di WordPress, i media, i temi e i plugin.

D’altra parte, il database contiene le impostazioni personalizzate del sito e i suoi contenuti unici. Tutte le pagine, i post, il testo e il design sono registrati come voci nelle tabelle.

I file comunicano con il database attraverso varie funzioni PHP e MySQL ed estraggono i dati visualizzati sulle pagine web.

Pertanto, quando il tuo sito non riesce a connettersi al database, non può recuperare i dati necessari per visualizzare le pagine. WordPress ti avverte del problema visualizzando il messaggio “Errore nello Stabilire una Connessione al Database”, come mostrato nell’immagine qui sotto.

Cosa significa "Error Establishing a Database Connection" in WordPress

Quali sono le cause più comuni di “Errore nello stabilire una connessione al database”?

Esistono diversi scenari in cui viene visualizzato l’errore. I più comuni includono:

  • Impostazioni del database errate nel file di configurazione – Le credenziali del database non corrette sono probabilmente il motivo più comune per una connessione al database interrotta. Se il nome del database, il nome utente, la password o il nome host sono errati, il sito non si connetterà al database e restituirà “Errore nello stabilire la connessione al database”.
  • Privilegi utente database insufficienti – Un altro motivo per cui si verifica l’errore è se l’utente del database non dispone di privilegi sufficienti, anche se le credenziali sono corrette. L’utente deve avere il permesso di eseguire tutti i tipi di operazioni MySQL sul database.
  • Tabelle del database danneggiate – WordPress è un sistema altamente dinamico e ogni volta che apporti modifiche al tuo sito web, le tabelle del database vengono modificate. L’aggiunta o l’eliminazione di plugin e temi crea nuove tabelle o elimina quelle esistenti, nuove pagine aggiungono nuove voci, ecc.
    Con così tante operazioni MySQL eseguite, occasionalmente, le tabelle potrebbero danneggiarsi, il che potrebbe portare a un’altra variazione di “Errore di connessione al database” – “Una o più tabelle del database non sono disponibili”.
  • URL del sito web non corretti – In rare occasioni, l’”Errore nello stabilire una connessione al database” potrebbe essere causato da URL non corretti del sito.
  • File WordPress corrotti – Un altro motivo per cui vedi il messaggio “Errore nello stabilire una connessione al database” è che i file core di WordPress del tuo sito sono corrotti. Ciò potrebbe derivare da un’infezione da malware, un aggiornamento non riuscito o un trasferimento di file incompleto durante lo spostamento manuale del sito.
  • Il server del database è inattivo o sovraccarico.

Come correggere “Errore nello stabilire una connessione al database”

A prima vista, l’errore sembra abbastanza intimidatorio e difficile da risolvere. Tuttavia, di solito si riduce ad alcune impostazioni chiave, che possono essere facilmente controllate e corrette.

Ispeziona il file wp-config.php del tuo sito WordPress

Le impostazioni per il database sono memorizzate nel file di configurazione di ogni installazione di WordPress. Si chiama wp-config.php e si trova nella directory principale del tuo sito.

Per controllare il file, accedi alle cartelle del sito tramite FTP o il tuo pannello di hosting. Se sei un utente SiteGround, vai a Site Tools > Sito > Gestione File.

La cartella principale di ogni sito web è la directory tuodominio.com/public_html. Nel nostro esempio, il nome del sito è sg-testing.com, quindi la cartella è sg-testing.com/public_html.

Prima di apportare modifiche, è meglio fare un backup del file per ogni evenienza. Per farlo, fai clic con il pulsante destro del mouse sul file, seleziona Copia, e rinomina la versione copiata in wp-config-backup.php.

Come creare un backup di wp-config.php

Dopo aver creato la copia di backup, seleziona il file wp-config.php e scegli Modifica.

Come ispezionare wp-config.php

Il nome del database, l’utente, la password e l’host sono definiti nelle seguenti righe di codice:

// ** Impostazioni database - Puoi ottenere queste informazioni dal tuo host web ** //

/** Il nome del database per WordPress */

define( 'DB_NAME', 'nome_del_database_qui' );

/** Nome utente database */

define( 'DB_USER', 'nome_utente_qui' );

/** Password del database */

define( 'DB_PASSWORD', 'password_qui' );

/** Nome host del database */

define( 'DB_HOST', 'localhost' );
Impostazioni del database in wp-config.php

I valori di ogni impostazione devono corrispondere al database esistente, all’utente e alla password nel server MySQL del sito. Dopo aver applicato le modifiche, premi l’icona Salva  (disco floppy).

Imposta il nome host corretto del database

Il server MySQL è definito dalla riga di codice:

define( 'DB_HOST', 'localhost' );

In genere, l’host del database si trova sullo stesso server dei file del sito web. Pertanto, il valore è “localhost” o “127.0.0.1” e l’intera riga sarà:

define( 'DB_HOST', 'localhost' );

o

define( 'DB_HOST', '127.0.0.1' );
Imposta il nome host corretto del database

Se hai impostato un host di database remoto, devi sostituire questi valori con il nome host corretto del server remoto.

Imposta il nome corretto del database

Dopo che l’host è stato stabilito, controlla i dettagli del database nel server MySQL. Gli utenti di SiteGround possono accedere facilmente alle impostazioni del database MySQL da Site Tools > Sito > MySQL.

Per confrontare più facilmente le impostazioni del file wp-config.php con i dettagli del database MySQL, apri la sezione MySQL in una nuova scheda del browser facendo clic con il pulsante destro del mouse su di essa e selezionando Apri link in un’altra scheda.

Apri MySQL in una nuova scheda

I database esistenti sul server MySQL sono elencati nella scheda Database sotto Gestisci il database.

Elenco dei database nel server MySQL

Il database elencato deve corrispondere a quello definito nel file wp-config.php.

Copia il nome del database

Copia il nome del database da MySQL > Database e incollalo nella riga di codice in wp-config.php :

define( 'DB_NAME', 'nome_del_database_qui' );

Copia il nome del database

Imposta il nome utente corretto del database

Per vedere l’utente per il database, fai clic sul link sotto la colonna Utenti del database.

Visualizza gli utenti per un database

Apparirà una finestra pop-up che elenca tutti gli utenti con privilegi per modificare il database del sito web. Evidenzia il nome utente sotto la colonna Utente e copialo.

Copia il nome utente del database

 

Torna alla modifica del file wp-config.php e incolla il nome nella riga:

define( 'DB_USER', 'nome_utente_qui' );
Imposta il nome utente del database in wp-config.php

Se non ci sono utenti collegati al database, non ci sarà alcun collegamento sotto la colonna Utenti. Clicca sull’icona Aggiungi nuovo utente sotto la colonna Azioni per aggiungere un utente esistente al database del sito.

Aggiungi un nuovo utente al database

Nella finestra popup, seleziona uno dei nomi dal menu a discesa Utenti, controlla il pulsante di opzione Tutti i privilegi, e premi Conferma.

Conferma l'aggiunta di un nuovo utente del database

Dopo che l’utente è stato collegato al database, puoi copiare il suo nome e incollarlo nel file wp-config.php .

Se non ci sono utenti esistenti, apri la sezione Site Tools > Sito > MySQL > Utenti. Puoi creare un nuovo utente premendo il pulsante Crea Utente.

Crea utente database

IMPORTANTE! Tieni presente che non puoi scegliere il nome utente del database. Verrà generato automaticamente dal sistema.

Il nuovo nome utente apparirà nella sezione Gestisci utenti nella scheda Utenti. Clicca sull’icona Aggiungi nuovo database per collegare l’utente al database del sito.

Collega l'utente al database

Nella finestra pop-up, seleziona il database del sito web, controlla il pulsante di opzione Tutti i privilegi, e premi Conferma.

Conferma il collegamento dell'utente al database

È quindi possibile copiare il nuovo nome utente e incollarlo nella rispettiva riga in wp-config.php.

Imposta la password dell’utente del database corretta

Dopo aver aggiunto l’utente in wp-config.php, devi assicurarti che la password dell’utente nel file corrisponda alla sua controparte in MySQL . Copia la stringa della password dalla riga in wp-config.php:

define( 'DB_PASSWORD', 'password_qui' );
Copia la password utente del database

Dopo aver copiato la password, torna a Sito > MySQL > Utenti, premi menù kebab, e seleziona Cambia Password.

Come modificare la password utente del database

Incolla la password nel campo Nuova password e premi Conferma.

Conferma la modifica della password utente del database

L’errore dovrebbe scomparire quando si ricarica il sito se tutte le credenziali sono impostate correttamente.

Controlla se l’utente del database ha i privilegi corretti

Per controllare i privilegi dell’utente, vai a Site Tools > Sito > MySQL > Utenti, e trova l’utente nella sezione Gestisci utenti. Clicca sul link sotto la colonna Accesso al database, che apre una nuova finestra pop-up.

Controlla se l'utente del database ha i privilegi corretti

Premi l’icona Gestisci accesso per aprire una nuova finestra in cui le opzioni di accesso sono gestite.

Gestire l'accesso per un utente del database

Per impostare tutti i permessi necessari, seleziona il pulsante di opzione Tutti i privilegi e fai clic sul pulsante Conferma.

Conferma tutti i privilegi

Riparare il database

Se il tuo database è danneggiato, devi ripararlo e, fortunatamente, WordPress ha una modalità di riparazione integrata.

Per attivarlo, devi modificare il file wp-config.php del tuo sito web tramite FTP o il tuo pannello di controllo di hosting.

Gli utenti di SiteGround possono modificare il file navigando su Site Tools > Sito > Gestione File. Il file si trova nella directory principale del sito, che è tuodominio.com/public_html (dove è necessario sostituire tuodominio.com con il proprio dominio).

Seleziona wp-config.php e premi Modifica.

Riparare il database. Modifica wp-config.php

Appena sopra la riga “/* That’s all, stop editing! Happy publishing. */” , aggiungi il seguente codice:

define('WP_ALLOW_REPAIR', true);

Confermare le modifiche premendo l’icona Salva.

Aggiungi il codice per la modalità di riparazione in wp-config.php

Per caricare la modalità di riparazione, apri la pagina https://tuodominio.com/wp-admin/maint/repair.php nel tuo browser, dove tuodominio.com viene sostituito con il nome del tuo sito web. Ad esempio, il nostro è sg-testing.com, quindi l’indirizzo sarebbe https://sg-testing.com/wp-admin/maint/repair.php.

Scegli la modalità di riparazione per WordPress

Scegli tra le due opzioni Riparazione database e Riparazione ed ottimizzazione del database, e una volta terminata la manutenzione, ricarica la homepage del tuo sito. Una volta confermato che l’errore è stato corretto, rimuovi il codice aggiunto in wp-config.php in modo che nessun altro possa eseguire la modalità di riparazione.

Ispeziona l’URL del sito WordPress nel database

L’errore ti impedirà di accedere alla dashboard in cui è impostato l’URL del sito web. Tuttavia, è possibile utilizzare phpMyAdmin per modificare le tabelle in cui sono definite queste impostazioni.

Gli utenti di SiteGround possono raggiungere lo strumento navigando su Site Tools > Sito > MySQL > PHPMYADMIN > ACCEDI A PHPMYADMIN.

Come accedere a phpMyAdmin

Clicca sul database del sito nella colonna a sinistra e apri la tabella wp_options .

Nota che wp_ è il prefisso predefinito della tabella di WordPress, ma nella maggior parte dei casi, il prefisso per il tuo sito sarà personalizzato.

Apri la tabella wp_options

Gli URL del sito web sono definiti nelle opzioni siteurl e home. Premi Edit su ciascuno, imposta l’URL del sito corretto nel campo option_value e conferma la modifica con il pulsante Go.

Imposta gli URL corretti in wp_options

Ripristina un backup del sito

Se hai riscontrato l’errore dopo un trasferimento manuale, assicurati di esportare un nuovo backup completo del sito web dall’hosting precedente e importarlo di nuovo nel nuovo hosting.

Se il sito non è stato trasferito e l’errore viene visualizzato all’improvviso, la scelta migliore è ripristinare il sito da un backup recente. Guarda questo tutorial per lo strumento Backup di SiteGround.

Contatta il tuo fornitore di hosting

Le soluzioni descritte sopra funzionano se il problema deriva dalla configurazione del sito web. Tuttavia, WordPress potrebbe non riuscire a connettersi al database se il server MySQL è sovraccarico o in manutenzione.

Se gestisci il tuo server, considera il riavvio del servizio MySQL per cancellare eventuali query bloccate sul database che lo sovraccaricano.

Gli utenti con hosting gestito non hanno questo tipo di accesso. Contatta il team di supporto del tuo provider in modo che possano controllare lo stato del server e risolvere i problemi dalla loro parte.

Riepilogo

“Errore nello stabilire una connessione al database” è un errore WordPress diffuso che potresti incontrare di tanto in tanto. In poche parole, ti informa che il tuo sito non può connettersi con il suo database.

Durante questo periodo, il tuo sito non è accessibile e dovrai ripararlo prima di perdere traffico sostanziale. Ma non preoccuparti, ci sono solo un piccolo numero di cause e, con un po’ di analisi dei problemi, possono essere facilmente risolte.

Questa guida ha delineato le cause più comuni dell’errore. Seguendo attentamente le istruzioni, puoi essere sicuro di riportare online il tuo sito web in pochissimo tempo.

Condividi questo articolo