fb-pixel
Logo Supporthost

Come risolvere l'errore nello stabilire una connessione al database

30 Ottobre 2023 / Pubblicato in:  da Maria Grazia Guzzo
Nessun commento

Stai riscontrando un errore nello stabilire una connessione al database che ti impedisce di accedere al tuo sito WordPress? In questa guida vedremo a cosa è dovuto e come fare per risolvere.

Iniziamo col dire che le cause dell'errore possono essere problemi di configurazione, errori interni del database o problemi a contattare il server su cui è ospitato il database.

Vediamo come si presenta esattamente l'errore e quali sono le sue varianti, per poi passare alle soluzioni passo passo.

Risolvere Errore Di Connessione Al Database

Cos'è l'errore nello stabilire una connessione al database?

L'errore nello stabilire una connessione al database è un problema che dipende dal database di WordPress e che si può presentare quando cerchiamo di accedere al nostro sito.

Bisogna sapere che i siti WordPress per funzionare e mostrarci le informazioni effettuano delle richieste al database per prelevare i dati necessari. Tutte le informazioni, compresi i contenuti di post e pagine vengono, infatti, memorizzate nel database. Così come anche le informazioni che permettono al tema e ai plugin di funzionare.

Ne consegue che un problema nella richiesta al database, causa l'interruzione del funzionamento di tutto il sito web.

Quando c'è un problema di connessione al database, aprendo una pagina del nostro sito vedremo uno schermo bianco con il messaggio di errore:

"Errore nello stabilire una connessione al database."

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

Prova gratis
Errore Nello Stabilire Una Connessione Al Database WordPress

Oppure se abbiamo impostato WordPress in lingua inglese:

"Error Establishing A Database Connection."

Error Establishing A Database Connection

In base alla pagina che stiamo visitando, potremmo vedere un errore più specifico che ci aiuta a capire quale può essere il problema. Vediamo alcuni esempi.

Errore "Cannot select database"

Ad esempio la pagina di errore "Cannot select database" che ti mostro qui sotto, ci indica che l informazioni di nome utente e password sono corrette, ma che non è possibile connettersi al database.

Cannot Select Database WordPress

Le soluzioni che ci propone di seguire sono:

  • Assicurarci che il database esista.
  • Verificare i permessi dell'utente.
  • Verificare che il nome del database sia corretto. L'avviso ci ricorda che in alcuni casi il nome del database è preceduto dall'username.

Error establishing a database connection

In altri casi potremmo vedere l'errore "Error establishing a database connection" con un avviso che ci invita a verificare se ci sono errori nelle informazioni del file wp-config.php o problemi a connettersi al server su cui è ospitato il database.

Error Establishing A Database Connection Avviso

In questi casi possiamo:

  • Verificare che username e password siano corretti.
  • Verificare l'hostname, in questo caso il nome dell'host è localhost, se il database è su un server differente dovremo specificarlo altrimenti non sarà possibile connettersi.
  • Capire se il problema dipende dal server.

Errore "One or more database tables are unavailable"

In alcuni casi, se le informazioni del database sono corrotte, potremmo vedere un avviso come questo:

One Or More Database Tables Are Unavailable

"One or more database tables are unavailable. The database may need to be repaired."

Cliccando su "repaired" ci vengono fornite le indicazioni su come avviare la riparazione del database.

Riparazione Automatica Database WordPress

Nei prossimi paragrafi vedremo esattamente come fare.

A cosa è dovuto l'errore nello stabilire una connessione al database

L'errore del database di WordPress può dipendere da una serie di problemi, i più comuni sono:

  • informazioni di accesso al database errate: questo può verificarsi ad esempio se abbiamo eseguito il trasferimento di un sito WordPress e non abbiamo aggiornato le informazioni del database;
  • database corrotto;
  • file di WordPress corrotti;
  • server del database non raggiungibile.

Nella pratica l'errore nello stabilire una connessione al database di WordPress può quindi dipendere da: errori di configurazione, errori nel database o problemi di connessione al server.

Andiamo a vedere come fare a risolvere.

Come risolvere l'errore nello stabilire una connessione al database

Vediamo quali sono le soluzioni all'errore di connessione al database.

Per prima cosa partiamo dal controllare che i dati di accesso al database siano corretti. Dopodiché vedremo come recuperare un database corrotto, come ripristinare i file di WordPress o recuperare un backup.

Verificare i dati di accesso al database

Nella maggior parte dei casi l'errore di connessione al database di WordPress deriva dal fatto che le informazioni di accesso al database contengono degli errori.

Come abbiamo visto all'inizio della guida ci sono diversi avvisi che ci invitano a verificare che le informazioni siano corrette. Ma di quali dati stiamo parlando e come si fa a verificarli?

Per accedere al database, WordPress ha bisogno di conoscere:

  • nome del database
  • nome utente
  • password
  • host name.

Queste informazioni vengono fornite a WordPress tramite il file wp-config.php.

Quello che dobbiamo fare, quindi, è verificare che le informazioni inserite nel file wp-config.php del nostro sito siano corrette. Ora ti spiego come controllarle una ad una.

Verificare il nome del database

Per prima cosa possiamo controllare se il nostro sito WordPress è collegato al database corretto.

Per farlo dobbiamo aprire il file wp-config.php che si trova nella cartella in cui abbiamo installato WordPress.

Suggerimento: se la tua installazione di WordPress si trova nella root del dominio, troverai il file di configurazione nella cartella public_html (in altri casi la cartella può avere il nome del sito). Se il sito è installato in una sottocartella per esempio "dominio.com/blog", il file si troverà nella cartella "blog" raggiungibile dal percorso public_html > blog.

La riga che dobbiamo controllare è questa:

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

Il nome del database in questo esempio è "tutorial_wp11". Adesso dobbiamo verificare che il database in questione sia associato al sito.

Per farlo apriamo phpMyAdmin: possiamo accedervi direttamente da cPanel andando su Database > phpMyAdmin o cercando tramite la barra di ricerca.

Phpmyadmin Cpanel Jupiter

Qui vedremo sulla sinistra la lista dei database, clicchiamo su quello con lo stesso nome che abbiamo trovato nel file wp-config.php e clicchiamo sulla tabella "wp_options".

Importante: il nome della tabella non sarà esattamente "wp_options" ma il prefisso potrebbe essere diverso. Per trovare la tabella giusta è sufficiente che la seconda parte del nome, quella dopo il trattino, sia "options".

Dobbiamo controllare il valore delle opzioni "siteurl" e "home" e assicurarci che il valore sia uguale all'indirizzo del sito.

Verificare Nome Database Da Phpmyadmin

Verificare il nome utente del database e i privilegi

Esattamente come abbiamo visto nel paragrafo precedente, dobbiamo aprire il file wp-config.php per capire qual è il nome utente del database e assicurarci che il nome sia corretto.

La riga che dobbiamo controllare è questa:

/** Database username */
define( 'DB_USER', 'tutorial_user123' );

In questo esempio il nome dell'utente è "tutorial_user123".

Adesso dobbiamo verificare che l'utente sia effettivamente collegato al database e abbia i privilegi necessari.

Da cPanel apriamo lo strumento Database MySQL, nella sezione Database correnti vedremo il nome del database e l'utente ad esso associato, come nel nostro esempio.

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

Prova gratis
Verificare Utente Database Da Cpanel

Nota: in alcuni casi come nel nostro esempio, il nome dell'utente può avere un prefisso ed essere di questo tipo "prefisso_nome". In questo caso assicurati sempre che nel file wp-config.php sia inserito il nome completo.

Dalla lista dei database correnti possiamo cliccare sul nome utente per verificare i privilegi. Dobbiamo assicurarci che sia spuntata la voce "Tutti i privilegi". Se non lo fosse, ci basterà spuntarla e poi cliccare sul pulsante "Apporta modifiche".

Verificare Privilegi Utente Database Cpanel

Verificare la password

Quando creiamo un utente associato al database, ci viene richiesto anche di creare una password. Non è possibile recuperare la password del database da cPanel, ma possiamo reimpostarla.

È sufficiente, quindi, aprire il file wp-config.php e prelevare la password da questa riga:

/** Database password */
define( 'DB_PASSWORD', '657p857@S' );

Andiamo su cPanel alla sezione Database MySQL e scorriamo fino a "Utenti correnti". Qui clicchiamo su "Modifica password" accanto all'utente, nel nostro caso "tutorial_user123".

Modificare La Password Utente Database WordPress

Incolliamo nei due campi la stessa password che compare nel nostro file wp-config.php e clicchiamo sul pulsante Modifica password.

Modificare Password Utente Database Con Cpanel

Verificare l'hostname del database

A questo punto dobbiamo verificare anche l'ultima informazione necessaria a collegarci al nostro database: l'hostname.

L'hostname in questo caso è il nome o indirizzo IP identificativo del server su cui risiede il database. Può essere "localhost" se il server del database è lo stesso del sito oppure un indirizzo IP se si tratta di due server separati.

Per impostazione predefinita su SupportHost usiamo localhost come hostname.

Se il tuo provider utilizza un server separato per i database, allora dovrai inserire l'indirizzo IP del server corretto. In genere queste informazioni ti vengono fornite con l'attivazione del piano, altrimenti puoi contattare il supporto.

Riparare il database

Come abbiamo visto all'inizio di questa guida, in alcuni casi l'avviso di errore ci dice che ci sono problemi in una o più tabelle del database e che potremmo riuscire a risolvere avviando la riparazione.

WordPress ha una funzione integrata di riparazione del database che può essere attivata andando a inserire una riga di codice nel file wp-config.php.

Nota: Prima di procedere con questa soluzione, è caldamente raccomandato eseguire un backup completo di file e database del sito. Fare un backup è sempre consigliato quando si vanno a effettuare modifiche nei file di configurazione.

Quello che dobbiamo fare è modificare il file wp-config.php andando a inserire la riga:

define('WP_ALLOW_REPAIR', true);

Dobbiamo aggiungere questa riga prima della riga "That's all, stop editing! Happy publishing.". Come in questo esempio:

Aggiungere Wp Allow Repair Nel File Wp Config Di WordPress

Dopo averla inserita, salviamo le modifiche e visitiamo questo indirizzo:

https://dominio.com/wp-admin/maint/repair.php

Devi sostituire dominio.com con il nome del tuo dominio.

In questa pagina vedremo un avviso come questo che ci mostra uno strumento per riparare o riparare e ottimizzare il database. Possiamo scegliere una delle due opzioni, ma se vogliamo che il processo sia più rapido possiamo usare la prima: "Riparazione database".

Strumento Di Riparazione Database WordPress

Al termine vedremo un avviso che ci dà un resoconto delle tabelle riparate.

Avviso Riparazione Database Completata WordPress

A questo punto è molto importante andare a modificare di nuovo il file wp-config.php e cancellare la riga che abbiamo inserito prima:

define('WP_ALLOW_REPAIR', true);

Altri metodi per riparare il database di WordPress

Ci sono anche altri sistemi per avviare la riparazione del database di WordPress.

Per esempio da cPanel possiamo aprire lo strumento "Database MySQL" dalla sezione Database e poi selezionare il database e cliccare su "Ripara database" come in questo esempio.

Ripara Database Da Cpanel

Al termine vedremo un avviso come questo se l'operazione è andata a buon fine.

Riparazione Database Completata Cpanel

Possiamo anche eseguire la riparazione del database da phpMyAdmin:

  • apriamo phpMyAdmin;
  • selezioniamo il database corretto dal menu di sinistra;
  • selezioniamo tutte le tabelle e clicchiamo su "Ripara tabella".
Riparare Database Da Phpmyadmin

Ripristinare i file del core di WordPress

Se i metodi precedenti non hanno funzionato, una possibile soluzione può essere quella di sostituire i file del core vale a dire i file richiesti per il funzionamento del sito.

Nota: il ripristino dei file del core non comporta la perdita di dati, ciononostante è sempre un'ottima idea fare un backup prima di procedere.

Nella pratica questo metodo consiste nello scaricare la versione di WordPress corrispondente a quella del nostro sito da WordPress.org per rimpiazzare i file presenti attualmente sul sito.

La prima cosa da fare quindi è andare su WordPress.org e scaricare WordPress. Questo ci permetterà di scaricare i file di WordPress in versione zip. Dopo averlo fatto possiamo estrarre i contenuti dall'archivio ed eliminare la cartella wp-content. È importante eliminare questa cartella per non perdere plugin e temi installati.

A questo punto non ci resta che caricare file e cartelle sul server andando a sovrascrivere i file già esistenti.

Dopo la procedura assicurati che il file wp-config.php sia rimasto invariato.

Ripristinare un backup

Un altro metodo che può aiutarti a risolvere il problema di connessione al database di WordPress è ripristinare un backup. Visto che l'errore può essere generato da file o database corrotti, è bene fare un ripristino completo di file e database.

Ci sono diversi modi per ripristinare un backup: per quanto riguarda un backup manuale ci basta caricare i file e importare il database. Puoi leggere nella guida al backup di WordPress tutta la procedura di ripristino.

Se sei cliente di SupportHost e hai ad esempio un piano hosting WordPress, puoi anche effettuare un ripristino da un backup automatico di Jetbackup: qui trovi i tutorial per ripristinare file e database.

Capire se si tratta di un problema con il server

Una delle cause dell'errore nello stabilire una connessione al database che abbiamo menzionato è un problema dovuto al server su cui è ospitato il database.

Per esempio più chiamate al database contemporanee potrebbero aver generato l'errore oppure il server potrebbe essere inattivo perché in manutenzione. Tieni presente che se il server è inattivo non dovresti riuscire nemmeno ad accedere al database attraverso phpMyAdmin.

Se pensi che questo sia il tuo caso, puoi contattare il tuo fornitore di hosting per segnalare il problema e capire se l'errore dipende da un problema del server.

Conclusioni

Abbiamo visto come risolvere l'errore nello stabilire una connessione al database su WordPress.

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

Prova gratis

La prima cosa da fare è controllare che i dati che permettono di collegarsi al database siano corretti.

Dopodiché si possono fare altri controlli, come assicurarsi che il server sia raggiungibile o provare a riparare il database. Quando tutto fallisce si può sempre ricorrere a un backup.

Sei riuscito a risolvere il problema? Quale soluzione è stata efficace? Facci sapere con un commento.

immagine autore

Maria Grazia Guzzo

Unisce la sua passione per la scrittura e la tecnologia per creare guide approfondite e di facile comprensione. Crede nei contenuti zero fuffa, scritti da e per le persone.

Articoli Correlati

Lascia un commento

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

chevron-down