Come risolvere errore di connessione al database di WordPress?

Come risolvere errore di connessione al database di WordPress?

4.8
(5)

Se stai navigando sul web da un bel po’ hai visto almeno una volta questo errore.

L’errore nello stabilire una connessione al database di WordPress è uno di quei problemi che possono avere cause multiple. Per un principiante nel mondo di WordPress questo problema è terribilmente frustrante specialmente perché può arrivare dal nulla senza che tu faccia cambiamenti al sito.

Ci siamo imbattuti in questo problema un paio di giorni fa sul sito di un nostro cliente. Ci sono voluti un po’ meno di 20 minuti per rilevare e risolvere il problema.

Mentre facevamo la ricerca per trovare le possibili cause ci siamo resi conto che in giro non c’era nessun articolo che parli in maniera approfondita di questo argomento.

In questo articolo ti mostrerò come risolvere l’errore di stabilire una connessione al database di WordPress compilando un elenco di possibili soluzioni in un unico luogo.

Questo articolo e il primo da una lunga serie di articoli dove andremo a parlare degli errori più comuni di WordPress e come risolverli.

Nota: Prima di apportare modifiche al tuo sito o al tuo database, assicurati di eseguire un backup completo del tuo sito WordPress.

1. Perché si verifica questo errore del database su WordPress?

Beh insomma, stai vedendo questo errore perché WordPress non è in grado di stabilire una connessione al database.

Ora, il motivo per cui WordPress non è in grado di stabilire una connessione al database può variare, ecco alcuni motivi più comuni:

  • Potrebbe essere che le credenziali di accesso al database sono errate o sono state modificate.
  • Potrebbe essere che il server del database non risponda.
  • Potrebbe essere che il database sia stato danneggiato.

Nella nostra esperienza, la maggior parte delle volte questo errore si verifica a causa di una sorta di errore del server tuttavia ci potrebbero essere anche altri fattori.

Diamo uno sguardo a come fare per risolvere questo problema di WordPress.

2. Il problema si verifica anche dentro l’area di amministrazione di WordPress?

La prima cosa da fare è assicurarsi che si stia ottenendo lo stesso errore sia sul front-end del sito sia sul back-end del sito (wp-admin).

Se il messaggio di errore è lo stesso su entrambe le pagine “Errore nello stabilire una connessione al database”, allora puoi procedere alla fase successiva.

Se hai trovato un errore diverso sul /wp-admin per esempio qualcosa come “Una o più tabelle di database non sono disponibili. Il database può avere bisogno di essere riparato ”, allora dovete riparare il database.

È possibile farlo aggiungendo la seguente riga nel file wp-config.php. Aggiungi proprio prima di ‘That’s all, stop editing! Happy blogging’  nel file wp-config.php.

Una volta fatto questo, è possibile continuare il processo di riparazione visitando questa pagina (ricordati di usare il url del tuo sito al posto di tuosito.com:

http://tuosito.com/wp-admin/maint/repair.php

Ricorda, l’utente non ha bisogno di essere loggato per accedere a questa funzionalità quando questa definizione (WP_ALLOW_REPAIR) è impostata.

Questo perché il suo intento principale è quello di riparare un database danneggiato, gli utenti spesso non possono accedere quando il database è danneggiato. Quindi, una volta che si è fatto riparare e ottimizzare il database, assicurarsi di rimuovere la stringa che hai aggiunto prima dal tuo wp-config.php.

Se questa riparazione non risolve il problema, o se si hanno problemi ad eseguire la riparazione puoi continuare la lettura di questo articolo così da provare un’altra soluzione.

3. Controllare il file wp-config di WordPress

Il file wp-config.php è probabilmente il singolo file più importante perché dentro di esso vengono inseriti i dettagli che permettono a WordPress di collegarsi al database.

Se ci sono stati cambiamenti ai parametri devi correggerli anche dentro questo file.

Ricorda che il tuo valore DB_HOST può non essere sempre localhost. Questo può cambiare in base all’azienda di hosting.

Per gli host popolari come HostGator, BlueHost, Site5 e sempre localhost.

Per altri il valore può essere diverso.  Alcune persone hanno risolto il problema cambiando localhost con l’ip del server mysql. E’ molto comune trovare questo problema quando giriamo WordPress su un server locale.

Per esempio con MAMP se cambiamo il DB_HOST da localhost all ip sembra funzionare

Gli IP variano in base all’azienda che ti fornisce l’hosting. Se tutto dentro il file wp-config.php è ok (assicurati di verificare che non ci siano errori di scrittura) allora possiamo dire che il problema è causato da qualcosa a lato server.

4. Controlla il hosting (in particolare il server MySQL)

Molto spesso noterai questo errore “Errore di stabilire una connessione al database” quando il tuo sito riceve moltissimo traffico. In poche parole il tuo server non riesce a gestire il carico (sopratutto se sei su un hosting condiviso).

Il tuo sito diventerà molto lento e per alcuni utenti mostrerà l’errore di connessioni al database.

La migliore cosa che tu possa fare è metterti subito in contatto con l’assistenza del tuo hosting WordPress via email o chat e chiedere a loro se il server MySQL del tuo sito è ok perché tu stai riscontrando dei problemi che impediscono il corretto funzionamento del tuo sito.

Per quei utenti che vogliono fare da soli e provare il funzionamento del server ecco cosa si può fare.

Per prima cosa se hai altri siti web sullo stesso server verifica se l’errore si presenti anche lì.

Se è cosi allora il problema è sicuramente causato dal server MySQL.

Se invece non hai altri siti sullo stesso server nessun problema, ciò che devi fare è accedere al panello di controllo (di solito è cPanel) e tentare di accedere a phpMyAdmin e collegarti al database.

Se è stato possibile connettersi bisogno verificare che il tuo utente del database abbia abbastanza autorizzazioni.

Per fare ciò devi creare un nuovo file chiamato testconnection.php e incollare il seguente codice al suo interno:

Assicurati di sostituire il nome utente (root) e la password (password) con le tue credenziali.

Il file lo metti dentro la cartella principale del tuo sito web cosi da poter accedere al file con il seguente url: “http://tuosito.com/testconnection.php”.

Se ti esce la scritta “Connected Successfully” quando navighi a quel’url allora l’utente ha tutte le autorizzazioni necessarie e c’è qualche altra cosa che non va.

Vai di nuovo a verificare il file wp-config e fai molta attenzione a errori di scrittura; anche una virgola in più può causare problemi.

Se invece non riesci a collegarti a phpMyAdmin allora puoi dire con certezza che il problema è a lato server, questo non significa che il server e giù. Potrebbe essere soltanto un problema con le autorizzazioni.

Nel caso del nostro cliente il server MySQL funzionava e tutti gli altri siti che stavano sullo stesso server funzionavano tranne questo su cui stavamo lavorando.

Quando abbiamo tentato di accedere al phpMyAdmin abbiamo riscontrato il seguente errore: 

#1045 – Access denied for user ‘giulio’@’%’ (using password: YES)

Ci siamo messi subito in contatto con l’azienda di hosting e il loro servizio clienti ha trovato subito il problema.

A quanto pare le autorizzazioni dell’utente sono state cancellate per qualche ragione e questo portava al’errore.

Sono andati subito a ripristinare e il sito è tornato subito online senza l’errore di connessione al database di WordPress.

Quindi se ricevi “Access denied” sia dal phpMyAdmin sia tramite il file testconnection.php ti consiglio di contattare subito l’assistenza del tuo hosting.

Saranno in grado sicuramente di risolvere il problema.

Ricordati di dire a loro esattamente ciò che hai fatto così che abbiano tutte le informazioni necessarie.

5. Soluzioni che hanno funzionato per altri

E’ importante tenere bene presente che queste soluzioni possono non funzionare nel tuo caso. Quindi per la sicurezza del tuo sito esegui un backup completo di WordPress prima di iniziare.

Un utente straniero ha pubblicato sul forum ufficiale di WordPress dicendo che il il suo cliente riceveva sempre un errore che gli diceva che bisognava riparare il database.

Una volta eseguita la riparazione l’errore non andava via.

Ha provato varie cose e alla fine ha scoperto che l’errore era causato da una modifica al SITE_URL.

Per risolvere ha eseguito il seguente commando da phpMyAdmin per sostituire l’url giusto:

Assicurati di sostituire YOUR_SITE_URL con l’url reale del tuo sito (es: http://iltuosito.it).

Il wp_options sarà diverso se è stato modificato il prefisso del database per aumentare la sicurezza di WordPress. Questa soluzione ha aiutato sia l’autore principale sia anche altre persone che avevano commentato la sua discussione.

Un altro utente ha aperto una discussione sempre sul forum di WordPress dicendo di essere riuscito a collegarsi al database usando il file testconnection.php anche se l’errore era sempre visibile.

Quello che ha scelto di fare è stato sostituire i dati del database all’interno del file wp-config con i dati dell’utente “root”, l’utente principale.

Una volta fatto tutto ciò WordPress ha iniziato a funzionare normalmente. A questo punto ha invertito di nuovo le credenziali usando le stesse credenziali di prima e come per miracolo tutto funzionava. Ha concluso che il problema era un errore di scrittura.

Siccome seguiamo il forum ufficiale di WordPress abbiamo letto di un sacco di persone che hanno risolto il problema caricando di nuovo i file di WordPress sovrascrivendo quelli vecchi.

Questo tipo di errore è veramente frustrante e spero che questo articolo ti abbia aiutato a risolverlo.

Tu hai già riscontrato questo errore? Come hai risolto? Se hai usato una soluzione diversa da quelle elencate in questo articolo ti sarei molto grato se prendessi un paio di minuti per condividere tale soluzione con noi qui sotto nei commenti.

Aggiungeremo le nuove soluzioni nell’articolo così che altri utenti non debbano sprecare ore e ore per trovare una soluzione.

Hai domande o argomenti da aggiungere? Commenta qui sotto, e farò del mio meglio per risponderti.

Unisciti al nostro gruppo su Facebook interamente dedicato agli Utilizzatori WordPress.

Potrai chiedere aiuto, fare domande, confrontarti con altri utilizzatori WordPress come te.

Alcuni articoli sul nostro blog che potrebbero interessarti:

 Come migliorare la sicurezza di WordPress?

Come disattivare gli errori PHP in WordPress?

Come risolvere l’internal server error su WordPress?

Come risolvere i problemi con i feed RSS in WordPress?

Come rimuovere i link che puntano ai file immagine su WordPress?

La Configurazione Ideale per WP Rocket con Istruzioni per CDN Cloudflare/Cloudfront

Come risolvere il problema con il tasto aggiungi media che non funziona in WordPress?

39 problemi/errori comuni di WordPress e come risolverli

Come risolvere il problema “Manca una cartella temporanea” su WordPress?

Come risolvere il problema con il caricamento immagini in WordPress?

Hai trovato utile questo articolo?

Fallo sapere a tutti a quanti lasciando una tua valutazione (da 1 a 5 stele) qui sotto. A te non costa nulla, ma per me significa tantissimo, sopratutto se il tuo sarà un voto a 5 stele.

Media Voto 4.8 / 5. Votanti totali 5

Mi dispiace che questo articolo non ti e stato utile

Aiutami a migliorare

1 commento su “Come risolvere errore di connessione al database di WordPress?”

  1. Pingback: Cosa fare quando sei bloccato fuori dal’ area di amministrazione di WordPress (wp-admin)

Lascia un commento

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

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Su questo sito usiamo i cookie. Tracciamo in maniera del tutto anonima le azioni dei nostri utenti. Visita il Centro Privacy per ulteriori informazioni o Impostazioni Privacy per modificare le tue preferenze.

Privacy Settings saved!
Impostazioni Privacy

Quando visiti un sito Web, esso può archiviare o recuperare informazioni sul tuo browser, principalmente sotto forma di cookie. Controlla qui i tuoi servizi di cookie personali.

Questi cookie sono necessari per il funzionamento del sito Web e non possono essere disattivati nei nostri sistemi.

Per utilizzare questo sito abbiamo bisogno che accetti l'uso dei seguenti cookie tecnici:
  • wordpress_test_cookie
  • wordpress_logged_in_
  • wordpress_sec
  • wp-settings-time-2
  • wp-settings-2
  • wordpress_gdpr_cookies_declined
  • wordpress_gdpr_cookies_allowed
  • wordpress_gdpr_allowed_services

Usiamo WooCommerce come sistema di acquisto. Per il carrello e l'elaborazione degli ordini verranno memorizzati 2 cookies. Questi cookie sono strettamente necessari e non possono essere disattivati.
  • woocommerce_cart_hash
  • woocommerce_items_in_cart

Monitoriamo in maniera del tutto anonima i visitatori di questo sito con lo scopo di avere un resoconto sul nostro lavoro e per migliorare sia il nostro sito sia il nostro servizio.
  • _ga
  • _gid
  • _gat

Rifiuta tutti i Servizi
Accetta tutti i Servizi
Torna su

Condividi con un amico