Capitolo 18 · 18.6
'Error establishing a database connection'
Il messaggio Error establishing a database connection (in italiano Errore durante la creazione di una connessione al database) significa che il Suo sito web non riesce a raggiungere il database oppure non può accedervi. I Suoi file sono ancora presenti, e solitamente anche il Suo database. In nove casi su dieci c'è qualcosa di errato nei dati che il Suo sito web utilizza per accedere.
Cause, dalla più frequente alla più rara
1. I dati nel file di configurazione non sono corretti
Questo accade soprattutto dopo un trasferimento, una nuova installazione o la modifica di una password. Lo verifichi così:
- Apra in DirectAdmin Database. Lì vedrà il nome completo del Suo database e gli utenti ad esso collegati (vedere Creare un database e Utenti, permessi e password dei database).
- Apra in Gestione file il file di configurazione del Suo sito web. Per WordPress si tratta di wp-config.php in public_html.
- Confronti i quattro valori:
- DB_NAME: il nome completo del database, con il Suo nome utente DA e un trattino basso davanti, come wtsilefl_shop.
- DB_USER: il nome completo dell'utente del database, anch'esso con questo prefisso.
- DB_PASSWORD: la password di tale utente del database. Non si tratta della Sua password DA.
- DB_HOST: localhost.
Non è sicuro della password? Assegni all'utente del database in DirectAdmin una nuova password e inserisca esattamente quella password in wp-config.php. Faccia attenzione alle virgolette e agli spazi.
In altri sistemi il file si chiama diversamente, ad esempio configuration.php per Joomla, app/config/parameters.php per PrestaShop oppure .env per Laravel.
2. L'utente non è (più) collegato al database
Un utente del database deve avere diritti sul database. Controlli in Database se l'utente è associato al database corretto. In caso contrario, lo colleghi nuovamente (vedere Utenti, permessi e password dei database).
3. Il database è vuoto o non è stato importato
Se ha trasferito il Suo sito web, controlli in phpMyAdmin se le tabelle sono effettivamente presenti (vedere Aprire e utilizzare phpMyAdmin). Se non ci sono tabelle, importi nuovamente il database (vedere Importare un database, anche file di grandi dimensioni).
4. Tabelle danneggiate
Riceve il messaggio solo occasionalmente, oppure WordPress segnala che una o più tabelle non sono disponibili? Controlli e ripari il database (vedere Verificare, riparare e ottimizzare un database).
5. Troppe connessioni
Vede nel registro errori Too many connections o max_user_connections? In tal caso il Suo sito stabilisce troppe connessioni contemporanee al database, spesso a causa di un plugin molto utilizzato o malfunzionante, oppure a causa di bot. Legga Il mio sito web è lento.
6. Lo spazio di archiviazione è pieno
Anche uno Spazio Disco pieno può causare malfunzionamenti del database. Controlli nella dashboard la voce Spazio Disco (vedere Spazio di archiviazione pieno: dove si trova lo spazio?).
7. Un guasto
Molto raramente il problema dipende dal server del database stesso. In tal caso controlli su Guasti e manutenzione se c'è qualche problema in corso.
Verificare che i dati siano corretti
Se riesce a vedere le tabelle in phpMyAdmin da DirectAdmin, il database esiste ed è presente. Se dopo questo riceve ancora il messaggio, quasi certamente il problema si trova nel file di configurazione del Suo sito web.
Suggerimento: Funzionava ancora ieri e non sa cosa sia cambiato? Con WebOké Backups in Mio WebOké può affiancare il database di un momento precedente come copia a quello attuale, con un nuovo nome. Così può confrontare senza rischi (vedere Posso farlo anche in Mijn WebOké? WebOké Backups).
