Errore “dmlreadexception” in Moodle: cosa significa e come risolverlo
Analisi tecnica e guida pratica per affrontare uno degli errori più comuni nel database di Moodle.
🔍 Cos'è l'errore dmlreadexception?
Se il tuo Moodle mostra un messaggio come:
dmlreadexception – Error reading from database
significa che qualcosa è andato storto nel momento in cui Moodle ha cercato di leggere i dati dal database.
Questo errore è generato dal DML (Data Manipulation Layer), cioè il livello che Moodle usa per comunicare con il database.
🧠 Le cause più comuni
- Query SQL errate da plugin malfunzionanti
- Record mancanti o dati corrotti
- Connessione instabile al database
- Charset incompatibile o permessi sbagliati
- Update di Moodle interrotto o non completato
🛠 Attiva il Debug
Vai su Amministrazione > Sviluppo > Debugging
Imposta il livello su DEBUG_DEVELOPER e attiva “Mostra messaggi di debug”.
Ricarica la pagina per visualizzare lo stack completo dell'errore.
🪵 Controlla i log del server
Se usi Plesk, cPanel o un altro pannello, accedi al file error_log.
Cerca righe collegate a Moodle o MySQL per individuare il punto esatto del problema.
🔧 Soluzioni pratiche
➡️ Plugin difettoso
Disattiva i plugin uno alla volta via database o intervenendo nel file config.php.
➡️ Record mancanti nel database
Esegui:
php admin/cli/check_database_schema.php
per individuare incongruenze nella struttura del database.
➡️ Upgrade non completato
Accedi a /admin e verifica se l’aggiornamento è rimasto in sospeso.
Controlla i permessi su moodledata (consigliati 755/644).
🚨 Non riesci a risolvere?
Se l'errore persiste:
- Controlla le versioni PHP/MySQL
- Fai un backup completo e prova su staging
- Consulta un tecnico esperto in Moodle
📌 Conclusione
L’errore dmlreadexception è fastidioso ma nella maggior parte dei casi è risolvibile senza perdita di dati.
Con il debug attivo e un controllo mirato, puoi sistemarlo anche in autonomia o con l’aiuto di un tecnico.
Serve aiuto con Moodle?
Posso analizzare il tuo sito e risolvere errori database o altri problemi tecnici in modo rapido e sicuro.