Come risolvere errore stabilire connessione al database WordPress



(Aggiornato il 13/01/2022)
Uno degli errori wordpress più comuni per cui ricevo molte richieste di “aiuto” è “Error establishing a database connection” che tradotto significa errore stabilire connessione database wordpress, questo indica l’impossibilità di wordpress di connettersi al database necessario per funzionare correttamente.

Non ti preoccupare non è nulla di grave, può capitare e per risolvere il problema non servono competenze da ingegnere aerospaziale, qui di seguito vediamo come risolvere questo errore di connessione al database wordpress.

Mi raccomando, prima di tutto ricordati assolutamente di eseguire un backup del database wordpress.






PERCHÈ QUESTO ERRORE AL DATABASE ?

Potrebbero esserci innumerevoli motivi per l’errore nello stabilire una connessione al database wordpress, potrebbe essere anche semplicemente perché il server non risponde ed è “fuori uso” giusto per quei minuti che bastano per farti preoccupare.

La maggior parte delle volte è per una errata configurazione del file wp-config, cioè le credenziali che permettono a wordpress di stabilire la connessione al database (nome database, nome utente database, password del database e nome host) sono errate.

Un’altra causa che genera l’errore e impedisce di stabilire la connessione al database di wordpress è che il database stesso potrebbe essere stato danneggiato quindi necessità di riparazione.

Hosting WP Flamenetworks

COME RISOLVERE L’ERRORE:

La prima cosa da fare è scaricare sul tuo computer e controllare il file “wp-config.php”, controlla che tutte le credenziali per la connessione al database siano corrette, quindi nome del database, nome utente del database, password del database e nome host database:

define('DB_NAME', 'nome-database');
define('DB_USER', 'nome-utente-database');
define('DB_PASSWORD', 'password-database');
define('DB_HOST', 'localhost');

La parte più importante da controllare è il punto “DB_HOST” che può variare a seconda dell’hosting che utilizzi, ad esempio alcuni hosting wordpress come godaddy, bluehost e altri il nome host del database è sempre “localhost” mentre per altri, come ad esempio per Aruba, il nome host è un indirizzo IP.

Dopo aver controllato ed eventualmente inserito i dati corretti controlla se tutto è tornato alla normalità sia l’accesso al pannello di controllo di wordpress (back-end) sia la visualizzazione del sito (front-end)

Più avanti spiego come disattivare i plugin tramite FTP se non dovessi avere accesso al pannello di controllo di wordpress, io ti consiglio di provare a disattivare tutti i plugin prima di “provare” ad andare avanti cercando di riparare il database oppure di eseguire un ripristino da backup, i plugin sono molto “pericolosi” e possono creare a volte anche questo genere di inconvenienti.

RIPARAZIONE DATABASE WORDPRESS:

Se “l’errore nello stabilire una connessione al database wordpress” comprare sia lato front-end che back-end, cioè sia quando visualizzate il sito e sia quando cerchi di accedere al pannello di controllo quasi sicuramente è un problema di database danneggiato, ma potrebbe esserci di mezzo sempre un errore di configurazione del file wp-config.

Cercando di accedere al pannello di controllo potrebbe apparirti un messaggio uguale a questo “Una o più tabelle del database non sono disponibili. Il database potrebbe avere bisogno di essere riparato.” (segue immagine)

Errore connessione database wordpress

Clicca sulla parola “riparato” e ti verrà mostrata la procedura che spiega come riparare il database (segue immagine).

Connessione database wordpress

Scarica sul computer il file wp-config.php e aggiungi al file la stringa:

define( 'WP_DEBUG', true);

Ricarica il file via FTP sovrascrivendo quello esistente e ricarica la pagina dove ti è apparso il messaggio, oppure utilizzate il link diretto:

www.nometuosito.it/wp-admin/maint/repair.php

Ti apparirà una nuova schermata dove avrai la possibilità di cliccare su due bottoni e scegliere “Riparazione database” oppure “Riparazione ed ottimizzazione del database” (segue immagine).

Riparazione database wordpress

Se la riparazione del database è stata portata a termine con successo riceverai la lista di tutte la tabelle di wordpress con la conferma “ok”. Se dopo la riparazione il problema è ancora presente è arrivato il momento di preoccuparti.

Il problema di questa procedura è che esegue la riparazione del database solo per le tabelle di default di wordpress e non ha effetto nelle tabelle create dall’installazione di altre utilità come ad esempio i plugin. Per risolvere questo “inconveniente” puoi accedere al sito tramite FTP e disabilitare tutti i plugin installati, per farlo ti basterà rinominare tutte la cartelle dei plugin che trovi all’interno della cartelle FTP con il nome di “plugins”.

Come puoi vedere dall’immagine che segue mi è bastato rinominare la cartella del plugin “all-in-one-seo-pack-pro” aggiungendo una “D” maiuscola alla fine, in questo modo il plugin verrà disattivato automaticamente.

In alternativa e più velocemente, puoi rinominare direttamente la cartella “plugins” dove sono contenuti tutti i plugin.

Rinominare cartelle plugin

Per riparare tutte le tabelle del database puoi utilizzare il pannello di controllo phpMyAdmin che fornisce il tuo servizio hosting, se non hai questa possibilità puoi utilizzare e installare sul tuo computer il software apposito per gestire database MySQL che trovi a questo indirizzo: www.phpmyadmin.net.

Entrato nel pannello di controllo phpMyAdmin seleziona il nome del database sul quale vuoi intervenire, seleziona tutte le tabelle del database e poi dal menu a discesa seleziona “Ripara tabella” (segue immagine)

Ripara tabelle database wordpress

Dopo questa operazione puoi riselezionare tutte le tabelle del database e invece di selezionare “Ripara tabella” seleziona “Ottimizza tabella”.

Se non sei riuscito a risolvere il problema di connessione al database lasciate un messaggio con gli eventuali tentativi che hai fatto e cercherò di darti una “manina”.

L’ultimo commento deve essere approvato.
33 commenti
  1. Filippo dice:

    Gentili Signori,
    dopo aver scrupolosamente eseguito la riparazione e l’ottimizzazione delle tabelle, e dopo aver disabilitato, rinominandoli, i plugins, appare il seguente messaggio quando cerco di accedere sia al sito che all’amministrazione dell ostesso
    Fatal error: Call to undefined function epreg_replac() in /home/abruz758/public_html/wp/wp-config.php on line 2

    Le righe 1 e 2 che inizianocon <?php contengono talmente tanta roba che destano più di un sospetto.

    Grazie

    Filippo Catania

    Rispondi
    • Admin-Fausto dice:

      Salve Filippo, difficile capire la situazione senza poter visionare i file. Visto che mi segnali del contenuto eccessivo nel file wp-config potrebbe essere anche un malware/virus. Ti consiglierei prima di tutto di eseguire una scansione antivirus/malware del sito.

      Eventualmente copia tutto il contenuto del file wp-config e inviamelo tramite email in un file di testo .txt. Ciao.

      Rispondi
  2. catherine dice:

    ciao cosa intendi per controllare il file “wp-config.php”, controlla che tutte le credenziali per la connessione al database siano corrette, quindi nome del database, nome utente del database, password del database e nome host database.
    come faccio a controllare? grazie

    Rispondi
    • Admin-Fausto dice:

      Salve Catherine, intendo controllare che tutti i riferimenti quindi appunto nome del database, nome utente del database, password del database e nome host database siano inseriti in modo corretto. Il file wp-config.php si trova all’interno dell’installazione di wordpress presente nello spazio web fornito dal tuo servizio hosting, per poter controllare e scaricare nel tuo computer ti basta utilizzare un programma FTP apposito che potrebbe essere Filezilla. Ciao.

      Rispondi
  3. andrea dice:

    Ciao, io ho una situazione leggermente diversa. Il sito funziona correttamente: wordpress 4.3.1 con php5.2.14 su aruba windows. Non mi ero mai preoccupato della versione di php senonchè alcuni plugin non mi si installano perchè chiedono un php più recente. Vado nel pannello di controllo, cambio versione alla 5.6.3 (la più recente disponibile) e questo mi causa l’errore “impossibile accedere al database” sia frontend che backend . se torno alla versione php 5.2.14 rifunziona tutto…

    Sapete come posso fare?

    Rispondi
  4. Roberto dice:

    Il commento è stringato, mi spiace ma non potendo accedere in alcun modo al back-end Non ho idea di come eseguire riparazioni

    Ottengo sempre: Errore nello stabilire una connessione al database

    Rispondi
    • Admin-Fausto dice:

      Salve Roberto, nell’articolo è spiegato anche come disattivare tutti i plugin senza avere accesso al back-end e riparare il database. Ciao.

      Rispondi
  5. Alessandro dice:

    Ciao Fausto, sto eseguendo l’installazione locale di WordPress con XAMPP su Mac.
    Continuo a ricevere il messaggio Errore stabilire una connessione a un database ma sono certo di aver eseguito tutti i passaggi.
    Spero tu mi autorizzi a postare il mio file wp-config.

    Eccolo di seguito:

    Rispondi
    • Admin-Fausto dice:

      Ciao Alessandro, le specifiche del file dovresti inviarmele tramite email (lo trovi alla sezione contatti) in un file di testo oppure inviami direttamente il file wp-config. Ciao.

      Rispondi
  6. Elisa dice:

    Salve vi espongo il mio problema. Un mio amico aveva gia fatto un sito con wordpress poi ha lasciato scadere il database. Ora l’ha rinnovato, sono riuscita a riagganciarlo a wordpress modificando il file config.php, funziona tutto, entro nel pannello di controllo di wordpress (dopo aver fatto dal database di aruba un importa del backup, ripristina tabelle e ottimizza tabelle) ma non ci sono più le pagine che erano state fatte.

    Vedo solo una nuova installazione di wp ma dall’ftp vedo tutto il contenuto precedente. Come posso fare per far ricomparire le pagine? Spero di essermi spiegata e di ricevere un’illuminazione. Grazie mille

    Rispondi
    • Admin-Fausto dice:

      Salve Elisa, perchè hai importato un backup del database ? se il database era solo scaduto sarebbe bastato riattivarlo eseguendo il pagamento per il rinnovo…!

      Di solito in questo caso dovresti vedere un schermata che ti richiede di cliccare un bottone per aggiornare il database, cosa vuol dire “Vedo solo una nuova installazione di wp” ?

      Mi viene il dubbio da quello che dici “sono riuscita a riagganciarlo a wordpress modificando il file config.php” che tu abbia creato un nuovo database con un nuovo nome e importato un backup sul nuovo database… o sbaglio?!?!

      Rispondi
  7. Elisa dice:

    Purtroppo il proprietario del sito aveva lasciato scadere il database, non era più stato rinnovato da più di un anno e pare non sia possibile recuperare il backup che Aruba effettuava quotidianamente. Ho importato un backup che il mio amico si era salvato sul suo pc e mi ha passato. Confermo che quello attuale è un nuovo database da lui riattivato.

    Ora è tutto funzionante, il database, l’installazione di wordpress, ma tutto completamente vergine perchè nel backup importato non saltano fuori le pagine che erano state fatte. Anche nella galleria media di wp non ci sono immagini ma per fortuna sono tutte salvate in locale. La mia domanda è: c’è un modo per riavere le pagine fatte e rimetterle su questo nuovo database o bisogna rifare da capo tutto il sito? Spero di essermi spiegata, in ogni caso sono a disposizione per ulteriori chiarimenti. Grazie mille per la tempestiva risposta.

    Rispondi
    • Admin-Fausto dice:

      Salve Elisa, forse mi sono spiegato male, anche se il database era scaduto non vuol dire che il contenuto al suo interno è stato cancellato, quello presente al suo interno e le impostazioni c’erano comunque, bastava solo rinnovarlo e non importare un backup.

      Di sicuro avendo importato un backup “di tempo fa” quel backup non contiene tutte le eventuali nuovo impostazioni inserite nel sito durante il tempo. In ogni caso non potendo mettere mano all’interno del sito ne sul pannello phpmyadmin del database è impossibile cercare di aiutarti.

      Da quello che vedo dovresti riuscire ad entrare nel pannello di controllo di wordpress, prova ad andare nelle pagine/articoli che non vengono visualizzati e prova a cliccare sul bottone “aggiorna” per vedere cosa succede. Comunque cosi come è adesso non si vede niente sul sito…è presente solo una pagina bianca. Ciao.

      Rispondi
  8. Elisa dice:

    Ti sei spiegato bene ma il fatto è che il mio amico credo non abbia fatto “rinnovo database” ma ne abbia ordinato e pagato uno nuovo, infatti le credenziali e l’host del nuovo db sono diverse dal precedente. Ho dovuto modificare il file config.php con i nuovi parametri per poter rivedere wordpress a cui non si riusciva più ad accedere anche dopo l’attivazione del db.
    Si ora non si vede nulla perchè non c’è nulla, provo a fare come dici tu e speriamo. Grazie ancora.

    Rispondi
    • Admin-Fausto dice:

      Gli amici super esperti… ! Se Aruba non ha cancellato il vecchio database basta PAGARE per il rinnovo/riattivazione di quel database dove al suo interno ci sono ancora tutti i dati di quando il sito funzionava. Reimposti i vecchi dati sul file wp-config e dovrebbe tornare tutto come prima. Ciao.

      Rispondi
  9. Elisa dice:

    Esatto! Se mi avesse avvisata prima di agire forse ora non ci ritroveremmo in questo pasticcio. A questo punto proviamo a sentire Aruba. Grazie mille sei stato cmq prezioso e tempestivo. Buona giornata.

    Rispondi
  10. Andrea dice:

    Buonasera Fausto,
    il mio problema invece è che questo errore ho iniziato a vederlo due giorni fà ma non capita sempre, circa 4/5 volte su 10 pagine aperte, quindi non credo sia un errore di configurazione in quanto a volte si collega e a volte no, sai dirmi come posso risolvere questo problema? grazie mille per il tuo aiuto

    Rispondi
    • Admin-Fausto dice:

      Salve Andrea, anche io quando ho provato a visualizzare il sito mi ha dato questo errore, se sei sicuro al 100% che non ci sono altre problematiche quasi sicuramente dipende da mancanze di risorse del servizio hosting, ci sono troppe richieste di query che l’hosting/database non riesce a gestire perché troppe. Ciao.

      Rispondi
  11. Monica Savi dice:

    Ciao, ho controllato nel config. I miei dati vanno bene.
    ho riparato il database modificando il config come specificato.
    ho provato a mettere una X alla fine del nome degli ultimi plugin installati dal ftp
    ho messo una X direttamente nel nome della cartella plugin
    … ma ancora niente :(

    che altro posso fare ? Grazie per l’aiuto!!!

    Rispondi
    • Admin-Fausto dice:

      Ciao Monica, se sei sicura al 100% che i dati inseriti siano corretti (ricontrolla bene) ed hai già tentato in modo corretto la riparazione del database può essere solo un problema del servizio hosting. I plugin vanno disattivati tutti. Ciao.

      Rispondi
  12. Monica Savi dice:

    Ciao Fausto, si dati perfetti ho ricontrollato. plugin disattivati tutti. :( niente da fare. Ho altre pagine sullo stesso server e le altre funzionano.
    Ieri avevo installato il plugin updraftplus per fare il backup e nella configurazione dava errori. Allora ho pensato: vabbè domani lo guardo con calma.. ed oggi la pagina non funziona. Potrebbe venire da questo plugin l’errore? (io ho disinstallato tutti i plugin mettendo una X nel nome della cartella plugin. ) sono in stracrisii :( magari c’è un metodo per disinstallare i plugins dalla base di dati?

    Rispondi
    • Admin-Fausto dice:

      Ciao Monica, se prima il problema non c’era e poi hai avuto problemi con quel plugin si, potrebbe essere dipeso anche da quello. Purtroppo senza vedere e poter mettere mano all’interno del pannello di controllo del sito e dell’hosting non posso fare molto. Ciao.

      Rispondi
  13. Cristina dice:

    Ciao! Ho seguito la procedura, e quella di un sacco di altri, ma continuo ad avere lo stesso problema!!
    Sul front-end di wordpress appare questa scritta:

    *****************

    Error establishing a database connection
    This either means that the username and password information in your wp-config.php file is incorrect or we can’t contact the database server at sql.europrezzi.eu. This could mean your host’s database server is down.

    Are you sure you have the correct username and password?
    Are you sure that you have typed the correct hostname?
    Are you sure that the database server is running?
    If you’re unsure what these terms mean you should probably contact your host. If you still need help you can always visit the WordPress Support Forums.

    *********************************************
    Mentre nel back-end, per caricare delle semplici immagini di 800x500px ci mette tantissimo e a volte si blocca ripetendo la stessa scritta del front-end.
    Non so più come fare!HELP!

    Rispondi
    • Admin-Fausto dice:

      Salve Cristina, le procedure che ho elencato in questo articolo sono le basi dalle quali partire e che nel 90% dei casi risolvono il problema, ma se cosi non è stato vuol dire che il problema è più “complesso” ammesso che tu abbia eseguito correttamente tutte le impostazioni.

      Io purtroppo non so ancora fare magie che mi permettano di risolvere problemi senza accedere al pannello di controllo di wordpress e hosting e non posso andare oltre ma se ritieni che il tuo progetto sia tanto importante da pagare un esperto di wordpres che ti risolva il problema io sono a disposizione. Ciao.

      Rispondi
  14. Filippo dice:

    Ciao, le soluzioni sono perfette. Ho notato però che un mio sito, due volte al giorno, resetta il wp-config eliminando le credenziali inserite per la connessione al database. Cosa pensate possa essere?

    Rispondi
    • Admin-Fausto dice:

      Salve Filippo, cosi senza avere qualche analisi solo un indovino potrebbe capire il problema. Potrebbe essere benissimo anche un malware/virus. Hai fatto almeno una scansione dei file del sito ? cosa dice il file log errori ? Ciao.

      Rispondi
  15. wordpress dice:

    Capita molto spesso in wordpress questa problematica. Spesso capita senza motivo apparente, ma seguendo le direttive di questa guida si risolve il problema senza incontrare grosse difficoltà. Grazie

    Rispondi

Lascia un Commento

Vuoi partecipare alla discussione?
Sentitevi liberi di contribuire!

Lascia un commento

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