Hay una pregunta que aparece siempre en las plataformas con unos cuantos cursos a la espalda: por qué la base de datos no para de crecer si el número de alumnos es más o menos el mismo todos los años. Las copias tardan cada vez más, restaurar da pereza, y el panel de administración va notablemente más lento que el resto del campus.
La respuesta suele estar en una sola tabla, y no es ninguna de las que uno imagina. No son los cursos, ni las calificaciones, ni los archivos. Es el registro de actividad: la bitácora donde Moodle apunta todo lo que hace todo el mundo.
Qué guarda ese registro y por qué es tan grande
Moodle anota cada acción que ocurre en la plataforma. Un alumno que entra, una página de curso que se abre, un archivo que se descarga, un intento de cuestionario que empieza, una calificación que cambia. Cada una de esas cosas es una fila.
No es un capricho: ese registro es lo que sostiene los informes de seguimiento, la trazabilidad que pide la formación bonificada y buena parte de las respuestas a "¿este alumno entró o no entró?". Hace falta y no se puede desactivar alegremente.
El problema no es que exista. El problema es que de fábrica no caduca nunca. Moodle trae una opción para decidir cuánto tiempo se conservan esas anotaciones, y su valor por defecto es "conservarlas siempre". Casi nadie lo cambia, porque nadie va a buscar un ajuste de un problema que todavía no tiene.
Así que la tabla crece todos los días, durante años, y nunca baja.
El orden de magnitud
Para que se vea la escala: en una plataforma que revisamos este curso, con alrededor de 17.000 usuarios registrados a lo largo de su historia, el registro de actividad acumulaba 13 millones de filas y 6,4 GB, con anotaciones que se remontaban a diez años atrás.
La base de datos completa ocupaba 19 GB. O sea que un tercio largo de todo el peso eran anotaciones de actividad, la mayoría de cursos terminados hace años, de alumnos que ya no están matriculados y de sesiones que a nadie le van a hacer falta nunca.
Y hay un detalle que lo agrava y que casi nadie conoce: Moodle también puede registrar la actividad de los visitantes no identificados. Si esa opción está activada, todo el rastreo automático que pasa por tu campus a diario acaba escrito en la misma tabla, aunque no corresponda a ningún alumno real.
Cómo comprobar si te está pasando
Son dos preguntas, y ninguna requiere tocar nada:
Cuánto ocupa el registro respecto al total. En la administración de la base de datos puedes ordenar las tablas por tamaño. Si la primera de la lista es la del registro estándar y se lleva más de un cuarto del total, ya tienes el diagnóstico hecho.
Desde cuándo hay anotaciones. Basta con mirar la fecha de la entrada más antigua. Si te devuelve un año en el que tu centro usaba otro plan de estudios, otro equipo y quizá otro Moodle, es que la opción de caducidad nunca se ha tocado.
Con esos dos datos delante, la decisión es casi automática: si el registro es enorme y arranca hace ocho años, nadie va a consultar nunca el 90 % de lo que hay ahí.
Cuánto conservar: la parte que hay que pensar
Aquí es donde conviene no ir con prisa, porque lo que se borra no vuelve. La pregunta correcta no es técnica, es de negocio: cuánto tiempo necesitas poder demostrar lo que pasó en tu campus.
Tres referencias que suelen valer:
- Formación bonificada o auditable. Manda el plazo que te exija la normativa que te aplique, y ahí no se improvisa: se pregunta antes de borrar nada. Lo habitual es conservar bastante más de un año.
- Formación propia sin obligación externa. Un año cubre con holgura cualquier reclamación razonable de un alumno sobre el curso que acaba de hacer.
- Campus interno de empresa. Suele bastar con menos, salvo que el departamento de personal use esos informes.
Y hay una alternativa intermedia que mucha gente no considera: archivar antes de borrar. Exportar las anotaciones antiguas a un archivo comprimido y guardarlo fuera de la base de datos. Ocupa una fracción de lo que ocupaba, sigue estando disponible si algún día hace falta, y deja de penalizar a la plataforma todos los días.
Las otras tablas que engordan, por si la tuya no es esa
El registro de actividad es la sospechosa habitual, pero no siempre es la primera de la lista. Si al ordenar las tablas por tamaño te encuentras otra cosa arriba, estas son las candidatas y lo que significa cada una:
| Si arriba tienes… | Lo que está pasando | Se recorta con |
|---|---|---|
| El registro de actividad | Nunca se ha purgado | Fijar un tiempo de conservación |
| Las tablas de intentos de cuestionario | Muchos exámenes con muchas preguntas | Rara vez se toca: es dato de valor |
| El histórico de calificaciones | Cada cambio de nota deja su rastro | Purga propia, con mucho cuidado |
| La tabla de archivos | No es peso real: son referencias | No se toca nunca a mano |
Las dos primeras filas son la diferencia clave. El registro de actividad es memoria de lo que pasó, y a partir de cierta antigüedad deja de tener uso. Los intentos de cuestionario son el trabajo del alumno, y eso no se purga alegremente aunque ocupe: si algún día alguien reclama una nota, es lo único que te respalda.
Y un aviso sobre la última fila, porque genera sustos: la tabla de archivos puede tener cientos de miles de filas y pesar poco, porque no guarda los archivos, guarda apuntes que señalan a ellos. Borrar filas ahí no libera espacio y sí puede dejar contenido inaccesible. Esa tabla no se toca a mano nunca.
Dónde está el ajuste y qué opciones tienes
La conservación del registro se decide en la configuración del propio almacén de registros, dentro de la administración del sitio, en la zona de complementos de registro. Es un desplegable con plazos, y su valor de fábrica es no borrar nunca.
Hay dos ajustes ahí que conviene mirar a la vez:
El tiempo de conservación, que es el que decide cuándo se retira lo antiguo.
Si se registra o no la actividad de quien no ha iniciado sesión. Este segundo pasa desapercibido y engorda mucho. Un campus público recibe rastreo automático a todas horas, y con esa opción activada cada una de esas visitas escribe su fila, mezclada con la actividad real de tus alumnos. Si tus informes solo miran a usuarios identificados, ahí no estás perdiendo nada al desactivarlo.
Una advertencia sobre el propio ajuste: Moodle puede tener más de un almacén de registros activo a la vez. Si en tu instalación hay varios, fijar la caducidad en uno no afecta al otro, y puedes quedarte con la sensación de haberlo arreglado mientras la tabla sigue creciendo por el otro lado. Conviene mirar la lista entera y no solo el primero.
Cómo se hace la primera limpieza sin tumbar el campus
Esta es la parte que hay que hacer con cabeza, y la que justifica que la haga alguien con acceso al servidor.
El problema es de volumen. Si llevas ocho años acumulando y pides conservar un año, la plataforma va a intentar retirar millones de filas en su siguiente ciclo de tareas. Una operación así en una base de datos grande puede tardar horas, bloquear la tabla mientras dura y dejar el campus muy lento o directamente inaccesible.
Lo que funciona:
- Hacerlo por tramos, empezando por lo más viejo y bajando poco a poco, en lugar de pedir el salto entero de una vez.
- Fuera de horario lectivo, y avisando si tenéis exámenes en marcha.
- Con copia de seguridad hecha y comprobada antes, no por riesgo de rotura, sino porque es irreversible.
- Mirando el espacio libre del disco, porque estas operaciones necesitan sitio temporal mientras trabajan y pueden llenar el disco justo cuando creías que ibas a liberarlo.
Y un detalle que sorprende a mucha gente: borrar filas no devuelve el espacio al disco de inmediato. La base de datos marca ese espacio como reutilizable y lo aprovecha para lo siguiente que escriba, pero el archivo no encoge solo. Para recuperarlo de verdad hace falta una operación adicional de compactación, que también es pesada y también va fuera de horario. Si nadie te lo ha explicado, miras el disco después de la limpieza, lo ves igual y piensas que no ha servido de nada.
Qué pasa con los informes que ya no se pueden consultar
Conviene dejarlo claro antes de que alguien se lleve la sorpresa: los informes de seguimiento del periodo borrado dejan de poder generarse. No es que se vean incompletos, es que ya no hay de dónde sacarlos.
Por eso la conversación previa no es técnica. Hay que preguntar a quien responde de esos informes cuánto tiempo necesita poder demostrar lo que pasó, y esa persona no suele ser de informática. Si hay formación bonificada o auditable de por medio, la respuesta la marca la normativa que os aplique y no se improvisa.
La salida intermedia, cuando hay dudas, es exportar antes de borrar. Un archivo comprimido con las anotaciones antiguas ocupa una fracción de lo que ocupaban en la base de datos, se guarda donde guardéis las copias y deja de penalizar a la plataforma todos los días. No es tan cómodo como consultarlo desde el campus, pero la información sigue existiendo.
Qué se gana
Recortar el registro no hace tu Moodle más rápido para el alumno, y conviene decirlo para no vender humo. Un alumno que abre un tema no consulta esa tabla. Lo que mejora es todo lo demás, que es bastante:
- Las copias de seguridad. Menos base de datos es menos tiempo de copia y, sobre todo, menos tiempo de restauración. Y el día que hay que restaurar, ese tiempo es lo único que importa.
- Las migraciones y las actualizaciones. Mover una base de datos de 19 GB y mover una de 12 no es la misma tarde de trabajo.
- Los informes y el panel de administración, que sí leen esa tabla y notan la diferencia.
- El espacio que pagas, que crecía todos los meses sin que nadie lo hubiera decidido.
Cómo dejarlo resuelto para siempre
Lo bueno de este problema es que se arregla una vez y no vuelve. Moodle trae la limpieza incorporada: se fija el tiempo de conservación y la propia plataforma va retirando lo que se pasa de plazo, sin intervención de nadie.
Dos advertencias antes de activarlo:
La primera limpieza es la peligrosa. Si llevas ocho años acumulando y de golpe pides conservar solo uno, la plataforma va a intentar borrar millones de filas de una vez. En una base de datos grande eso puede tardar muchísimo y dejar el campus tocado mientras dura. Se hace por tramos y fuera de horario lectivo, no un martes a mediodía.
Antes de la primera limpieza, copia de seguridad. No porque el proceso sea arriesgado, sino porque es irreversible y merece la pena poder volver atrás si alguien se da cuenta tarde de que necesitaba esos datos.
En resumen
El registro de actividad de Moodle es útil y necesario, pero viene configurado para guardarlo todo para siempre, y eso no lo ha decidido nadie en tu centro: es simplemente el valor con el que salió de fábrica.
Comprobarlo cuesta dos consultas. Decidir cuánto conservar es una conversación de media hora con quien sepa qué plazos te obligan. Y a partir de ahí, la plataforma se ocupa sola.
Preguntas frecuentes
¿Borrar el registro afecta a las calificaciones o a los cursos? No. Son datos distintos. Las calificaciones, las entregas y el contenido de los cursos viven en sus propias tablas y no se tocan.
¿Y a los informes de seguimiento? A los del periodo que borres, sí: dejarán de poder consultarse. Por eso la decisión de cuánto conservar es de quien responde de esos informes, no del informático.
¿Cada cuánto hay que repetirlo? Una vez. Se fija el tiempo de conservación y la plataforma va retirando sola lo que se pasa de plazo. Lo único que se hace a mano es la primera limpieza, que es la grande.
¿Cuánto espacio se recupera? Depende de los años acumulados. En una plataforma con una década de historia, el registro puede ser un tercio del total de la base de datos.
Si prefieres que esto lo vigile alguien y no volver a acordarte, entra en gestión de Moodle.
¿Y si tu Moodle lo lleváramos nosotros?
Actualizaciones, backups verificados, rendimiento y trazabilidad FUNDAE, gestionado de forma continua por una persona que responde. Auditoría gratuita de tu plataforma actual.