Wordpress

Come risolvere l’errore nello stabilire una connessione al database

Se hai navigato in rete per un po ‘, hai almeno visto questo errore alcune volte. Errore durante la creazione di una connessione al database è una di quelle maledizioni che potrebbero essere causate da molte ragioni. Come principiante di WordPress, questo potrebbe essere terribilmente frustrante specialmente quando è successo da solo senza che tu cambiassi nulla. Ci siamo imbattuti in questo problema ieri sul nostro sito. Ci sono voluti poco più di 20 minuti per rilevare e risolvere il problema. Mentre facevamo la ricerca per trovare le possibili cause, ci siamo resi conto che non c’era un buon articolo che riguardasse il tutto. In questo articolo, ti mostreremo come risolvere l’errore stabilendo una connessione al database in WordPress compilando un elenco di soluzioni tutto in un unico posto.

Nota: prima di apportare modifiche al database, assicurarsi di disporre di un backup del tuo sito.

Perché ricevi questo errore?

Insomma, stai ricevendo 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. Potrebbe essere che le credenziali di accesso al database siano errate o siano state modificate. Potrebbe essere che il server del database non risponda. Potrebbe essere che il tuo database sia stato corrotto. Nella nostra esperienza, la maggior parte delle volte questo errore si verifica a causa di una sorta di errore del server, ma potrebbero esserci anche altri fattori. Diamo un’occhiata a come fare per risolvere questo problema.

Il problema si verifica anche in / wp-admin /?

La prima cosa che dovresti fare è assicurarti di ottenere 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 durante la creazione di una connessione al database”, quindi procedere al passaggio successivo. Se si verifica un errore diverso su wp-admin, ad esempio qualcosa come “Una o più tabelle del database non sono disponibili. Potrebbe essere necessario riparare il database “, quindi è necessario ripristinare il database.

Puoi farlo aggiungendo la seguente riga nel tuo file wp-config.php. Aggiungilo poco prima di ‘Tutto qui, smetti di editare! Happy blogging ‘ line wp-config.php.

define(‘WP_ALLOW_REPAIR’, true);

Dopo averlo fatto, puoi vedere le impostazioni visitando questa pagina: http://www.tuosito.com/wp-admin/maint/repair.php

Ricorda, non è necessario che l’utente abbia effettuato il login per accedere a questa funzionalità quando viene definita questa definizione. Questo perché il suo intento principale è quello di riparare un database danneggiato, gli utenti spesso non possono accedere quando il database è corrotto. Quindi, una volta che hai finito di riparare e ottimizzare il tuo database, assicurati di rimuoverlo dal tuo wp-config.php.

Se questa riparazione non ha risolto il problema, o si riscontrano problemi nell’esecuzione della riparazione, continua a leggere questo articolo poiché potresti trovare un’altra soluzione per il corretto funzionamento.

Controllo del file di configurazione WP

WP-Config.php è probabilmente il singolo file più importante nella tua intera installazione di WordPress. Qui è dove si specificano i dettagli per WordPress per connettere il proprio database. Se hai modificato la password di root o la password dell’utente del database, dovrai modificare anche questo file. La prima cosa che dovresti sempre controllare è se tutto nel tuo file wp-config.php è lo stesso.

define(‘DB_NAME’, ‘database-name’);

define(‘DB_USER’, ‘database-username’);

define(‘DB_PASSWORD’, ‘database-password’);

define(‘DB_HOST’, ‘localhost’);

Ricorda che il tuo valore DB_Host potrebbe non essere sempre localhost. A seconda dell’host, sarà diverso. Per host famosi come HostGator , BlueHost , SiteGround , è localhost. Puoi trovare altri valori host qui .

Alcuni hanno suggerito di risolvere il problema sostituendo localhost con l’IP. È comune vedere questo tipo di problema quando si esegue WordPress su un ambiente server locale . Ad esempio su MAMP, il valore di DB_Host quando viene modificato su IP può sembrare funzionare.

define(‘DB_HOST’, ‘127.0.0.1:8889’);

Gli IP varieranno per i servizi di web hosting online.

Se tutto in questo file è corretto (assicurati di controllare gli errori di battitura), allora è giusto dire che c’è qualcosa di sbagliato sul server.

Controlla il tuo host Web (MySQL Server)

Spesso noterai questo errore durante la creazione della connessione al database quando il tuo sito si riempie di traffico. Fondamentalmente, il tuo server host non è in grado di gestire il carico (specialmente quando si è in hosting condiviso). Il tuo sito diventerà molto lento e alcuni utenti emetteranno l’errore. Quindi la cosa migliore che dovresti fare è andare al telefono o live con il tuo hosting provider e chiedere loro se il tuo server MySQL è reattivo.

Per quegli utenti che vogliono verificare se il server MySQL è in esecuzione da soli, è possibile fare alcune cose. Prova altri siti sullo stesso server per vedere se stanno avendo il problema. Se hanno anche lo stesso errore, allora sicuramente c’è qualcosa che non va nel tuo server MySQL. Se non hai altri siti su questo stesso account di hosting, vai sul tuo cPanel e prova ad accedere a phpMyAdmin e connetti il ​​database. Se è possibile connettersi, è necessario verificare se l’utente del database dispone dell’autorizzazione necessaria. Crea un nuovo file chiamato testconnection.php e incolla il seguente codice in esso:

<?php $link = mysqli_connect(‘localhost’, ‘username’, ‘password’); if (!$link) { die(‘Could not connect: ‘ . mysqli_error());}echo ‘Connected successfully’;mysqli_close ($link);?>

Assicurati di sostituire il nome utente e la password. Se lo script è connesso correttamente, significa che il tuo utente ha un’autorizzazione sufficiente, e c’è qualcos’altro che è sbagliato. Torna al tuo file wp-config per assicurarti che tutto sia corretto (riesegui la ricerca degli errori di battitura).

Se non riesci a connetterti al database andando su phpMyAdmin, allora sai che è qualcosa con il tuo server. Ciò non significa necessariamente che il tuo server MySQL non funzioni. Potrebbe significare che il tuo utente non ha un’autorizzazione sufficiente.

Nel nostro caso, il nostro server MySQL era in esecuzione. Tutti gli altri siti sui server funzionavano correttamente, ad eccezione di WPBeginner. Quando abbiamo provato ad andare al nostro phpMyAdmin, abbiamo finito per ottenere l’errore:

# 1045 – Accesso negato per l’utente ‘foo’ @ ‘%’ (utilizzando la password: YES)

Abbiamo parlato al telefono con HostGator e il loro supporto ha trovato rapidamente il problema. In qualche modo le autorizzazioni dei nostri utenti sono state ripristinate. Non so come sia successo, ma a quanto pare è stata questa la ragione. Sono tornati indietro e ripristinato le autorizzazioni e siamo riusciti a riportare il sito dal vivo.

Quindi, se ottieni l’errore di accesso negato in entrambi i casi di connessione al tuo phpMyAdmin o attraverso i risultati di testconnection.php, dovresti contattare immediatamente il tuo host per farglieli risolvere.

Soluzioni che hanno funzionato per gli altri

È importante notare che questi potrebbero non funzionare per te. Utilizzare a proprio rischio e assicurarsi di disporre di backup sufficienti se qualcosa va storto.

Deepak Mittal ha detto che il suo cliente stava ricevendo l’errore che il database deve essere riparato. Anche dopo aver riparato il database, l’errore non è andato via. Ha provato varie cose e alla fine, il problema era l’url del sito. Apparentemente è stato cambiato ciò che ha causato la persistenza dell’errore. Ha eseguito la query SQL andando su phpMyAdmin:

UPDATE wp_options SET option_value='YOUR_SITE_URL' WHERE option_name='siteurl'

Questo è un errore davvero frustrante. Che cosa hai provato che sembrava funzionare per te? Saremmo lieti di espandere questa risorsa, in modo che altri non debbano perdere tanto tempo per trovare una soluzione.

Leave a Reply

Rispettiamo la tua privacy!

Su questo sito utilizziamo strumenti nostri o di terze parti che memorizzano piccoli file (cookie) sul tuo dispositivo. I cookie sono normalmente usati per permettere al sito di funzionare correttamente (cookie tecnici), per generare statistiche di uso/navigazione (cookie statistici). Abilitando questi cookie, ci aiuti ad offrirti una esperienza migliore con noi.

Privacy & Cookie Policy