Para todos aquellos que como yo, se hayan encontrado con este problema, después de intentar la actualización de su versión de moodle, 2.6 en adelante, en entorno Windows:
Cuando realizamos el proceso de actualización, en el apartado de la comprobación de tu versión de moodle actual y la revisión de las compatibilidades, con la siguiente, es posible que la actualización demande un cambio o revisión, en el modo en el que están formateadas las tablas, de Antelope a Barracuda, en concreto, en las siguientes:
mdl_data
mdl_data_fields
mdl_enrol_paypal
mdl_lti
mdl_user
mdl_user_info_field
Este error en MySQL conlleva un cambio o ampliación, en el tamaño de los caracteres por tabla lo cual puede influir, entre otras cosas, en las direcciones url, y llevar a errores posteriores, (tipo 500, 404, etc) de todos modos, moodle continua con la actualización y la acaba sin mas problemas, pero si este problema no se soluciona, persistirá en las siguientes actualizaciones, puesto que la ejecución del Cron, no lo corrige.
Solucción:
Existe en tu carpeta de moodle, o sea en tu instalación actual, dentro del directorio Admin/cli un archivo .php, para corregir ese problema, al menos en parte, se denomina mysql_compressed_rows.php . Está ahí para resolver este problema, ahora se trata de activarlo:
Al ser un archivo con extensión .php, necesitas un ejecutor de comandos php, para que realize su cometido, y ese ejecutor, puede ser un PHP56.exe, (o el que tenga que ver con tu versión actual de PHP, 5.3, o 5.4, etc) que descarges a tu DD, y que instales en una carpeta en tu disco duro, por ejemplo, C:\PHP, desde esta ubicación y con el ejecutor de comandos PHP56.exe, dentro dispararemos a nuestro mysql_compressed_rows.php, como?, un suponer:
C:\cd PHP
C:\PHP\php C:\inetpub\"midominio"\moodle\admin\cli\mysql_compressed_rows.php -l
La carpeta inetpub en windows es la que publica, puesto que depende del servidor web IIS, dentro de esta carpeta elige tu dominio, donde sustituirás el nombre completo de tu url, como se puede ver en la línea de comandos anterior, y te diriges hacia el mysql_compressed_rows.php -l con la opción "l" de listar las tablas que en MySQL, presentan problemas, te mostrará las tablas que vimos al principio, posteriormente ejecutamos:
php C:\inetpub\"midominio"\moodle\admin\cli\mysql_compressed_rows.php -f
donde la opción f, forzaría la correción del problema, pero es posible, que no sea así, porque no tienes los permisos necesarios en MySQL, para ejecutar la acción, estos permisos son a nivel de SUPERADMINISTRATOR, y para ello es necesario que accedas a MySQL, desde la posición del Admin de origen, osea del Admin que declaraste en el proceso inicial de instalación de la base de datos. Si dispones de phpAdmin, para acceder a MySQL, desde Web, requiere que te sitúes en Home, dentro de MySQL, y que te asegures que estás como administrador principal, si es así, seleccionas la pestaña, SQL, y le pegas el siguiente código:
Use "elnombredemibasededatos"_;
SET SESSION sql_mode=STRICT_ALL_TABLES;
SET GLOBAL innodb_file_per_table=1;
SET GLOBAL innodb_file_format=Barracuda;
ALTER TABLE mdl_data ROW_FORMAT=Compressed;
ALTER TABLE mdl_data_fields ROW_FORMAT=Compressed;
ALTER TABLE mdl_enrol_paypal ROW_FORMAT=Compressed;
ALTER TABLE mdl_lti ROW_FORMAT=Compressed;
ALTER TABLE mdl_user ROW_FORMAT=Compressed;
ALTER TABLE mdl_user_info_field ROW_FORMAT=Compressed;
En Use identifico mi base de datos, vinculada a moodle, en la cual quiero cambiar el formato de Antelope a Barracuda, escribo o copio correctamente los comandos y ejecuto pulsando en Continuar.
Si no hay errores MySQL, validará la acción, pero como puedo comprobarlo?, vuelvo a la línea de comando y ejecuto:
php C:\inetpub\midominio\moodle\admin\cli\mysql_compressed_rows.php -l
listando nuevamente las tablas anteriores y si la respuesta es:
mdl_data Compressed
mdl_data_fields Compressed
mdl_enrol_paypal Compressed
mdl_lti Compressed
mdl_user Compressed
mdl_user_info_field Compressed
el formato ya está corregido, y la revisión en moodle dejará de aparecer, con lo cual podemos seguir actualizando nuestra versión de moodle sin arrastrar esta revisión, en el futuro.