Error al hacer copia de seguridad

Error al hacer copia de seguridad

de Sector 426 -
Número de respuestas: 7

Soy administrador de una Moodle 2.6.11++ (MySQL 5.8.8 y 4.0.10.20) instalada en local en la que genero y trabajo sobre mis cursos.
Después de un intenso día de trabajo creando tareas en un curso concreto (ya muy trabajado con peso > 40Mb) intento hacer una copia de seguridad de ese curso y me da "Error al escribir a la base de datos" antes de iniciar ningún paso.

- No deja hacer backup del curso completo ni de varias tareas: "Error al escribir a la base de datos"
- No puedo, desde otro curso, importar tareas ni nada del curso que ha fallado: "Error al escribir a la base de datos"
- Sí deja hacer copia de seguridad de tareas sueltas desde el menú de la tarea.
- Sí puedo hacer backups de otros cursos sin problemas (como siempre).

He intentado desde phpmyadmin hacer a muchas tablas de _backup, de _course, _assign, etc.: CHECK TABLE <tabla>, ALTER TABLE <tabla> ENGINE = InnoDB; ALTER TABLE <tabla> FORCE; ANALYZE TABLE <tabla>; OPTIMIZE TABLE  <tabla> (no es soportada al ser tablas INNODB); FLUSH TABLE <tabla> sin que se corrija el problema.

Agradecería cualquier idea.
Salu2 y gracias

Promedio de valoraciones: -
En respuesta a Sector 426

Re: Error al hacer copia de seguridad

de Sector 426 -
He probado 2 cosas más sin éxito:
1.- He intentado restaurar varias copias de seguridad de ese curso de hasta junio de este año y todas dan el mismo error de escritura en BBDD (otros cursos sí puedo restaurarlos).
2.- Forzar una copia de seguridad programada desde el cron. Hace sin problemas las copias de los demás cursos y cuando llega a este en cuestión da el mismo error de escritura en BBDD y se detiene:
---------------------------------------
Checking automated backup status...OK
Getting admin info
Checking courses
Skipping deleted courses...0 courses
Running required automated backups...
... started 11:20:14. Current memory use 22.1MB.
Backing up SAM MOODLE 2.6.11+...
complete - next execution: Sat, 01 Feb 2020 11:20:00 +0100
Backing up Seguridad Informática 2ºSMR...
complete - next execution: Sat, 01 Feb 2020 11:20:00 +0100
Backing up Servicios en Red 2º SMR...
complete - next execution: Sat, 01 Feb 2020 11:20:00 +0100
Backing up TIC II - 2º Bachillerato...
!!! Error al escribir a la base de datos !!!

-------------------------------------------
En respuesta a Sector 426

Re: Error al hacer copia de seguridad

de Jose Luis Martin Jimenez -
Imagen de Moodlers de gran ayuda
Ufff ... la versión 2.6 es muy antigua, pero creo que en ella ya existía la opción de activar los "mensajes de depuración" (https://docs.moodle.org/all/es/Depuraci%C3%B3n).

Después de activarlo, los mensajes que veas en pantalla al hacer una de las cosas que fallan te pueden dar una idea más concreta de cuál es el motivo del error.

Suerte
En respuesta a Jose Luis Martin Jimenez

Re: Error al hacer copia de seguridad

de Sector 426 -
Uff! Si que da información detallada, pero me temo que no estoy al nivel de sacarle partido, a ver si tu ves algo:

Warning: mysqli::query() [mysqli.query]: MySQL server has gone away in C:\Moodle2611\server\moodle\lib\dml\mysqli_native_moodle_database.php on line 1144
Warning: mysqli::query() [mysqli.query]: Error reading result set's header in C:\Moodle2611\server\moodle\lib\dml\mysqli_native_moodle_database.php on line 1144
Debug info: MySQL server has gone away
INSERT INTO mdl_backup_controllers (backupid,operation,type,itemid,format,interactive,purpose,userid,status,execution,executiontime,checksum,controller,timecreated,timemodified) VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
[array (
0 => '0c8d3c77c6640af3ffe483b32450b4ce',
1 => 'backup',
2 => 'course',
3 => 13,
4 => 'moodle2',
5 => 1,
6 => 10,
7 => '2',
8 => 500,
9 => 1,
10 => 0,
11 => 'df025c637a3c038ddbba7e1c1147a35f',
12 => 'TzoxNzoiYmFja3VwX2NvbnRyb2xsZXI ...1.065.212 bytes en caracteres de texto... 0NTBiNGNlLmxvZyI7fX19fQ==',
13 => 1580151611,
14 => 0,
)]
Error code: dmlwriteexception
Stack trace:
line 446 of \lib\dml\moodle_database.php: dml_write_exception thrown
line 1146 of \lib\dml\mysqli_native_moodle_database.php: call to moodle_database->query_end()
line 1188 of \lib\dml\mysqli_native_moodle_database.php: call to mysqli_native_moodle_database->insert_record_raw()
line 97 of \backup\util\dbops\backup_controller_dbops.class.php: call to mysqli_native_moodle_database->insert_record()
line 340 of \backup\controller\backup_controller.class.php: call to backup_controller_dbops::save_controller()
line 137 of \backup\util\ui\base_ui.class.php: call to backup_controller->save_controller()
line 147 of \backup\backup.php: call to base_ui->save_controller()
En respuesta a Sector 426

Re: Error al hacer copia de seguridad

de Jose Luis Martin Jimenez -
Imagen de Moodlers de gran ayuda

Sobre el error "dmlwriteexception" existe esta entrada en la documentación de Moodle: https://docs.moodle.org/37/en/error/moodle/dmlwriteexception

Ahí se dice que podría deberse a un valor incorrecto de "max_allowed_packet", lo que podría corresponderse con el mensaje de la línea 12 del texto de salida que has copiado antes. Yo probaría a subir el valor de ese parámetro a ver si se soluciona.

Saludos

En respuesta a Jose Luis Martin Jimenez

Re: Error al hacer copia de seguridad

de Sector 426 -
SABIDURÍA..... DIVINO TESORO !!!!
¡Increible! MUCHAS GRACIAS, lo sencillo que es hacerlo y lo difícil que ha sido para mi encontrar esta aguja en el inmenso pajar, lo he pasado mal estos días pensando en que había perdido las muchísimas horas de trabajo que he echado a ese curso.
¡ Muchas gracias ! de nuevo, eres un genio.
Salu2
En respuesta a Sector 426

Re: Error al hacer copia de seguridad

de Jose Luis Martin Jimenez -
Imagen de Moodlers de gran ayuda
Me alegro de haber contribuido a solucionar el problema.
De "genio" nada 😄 ... unas veces se acierta y otras no, aunque siempre se haga con la mejor voluntad de ayudar.

Saludos