Acceso rápido:
Error utf8mb4_unicode_ci requiere que el formato de archivo se establezca en barracuda
Al empezar con una instalación nueva o al actualizar Moodle, puede que te encuentres con la necesidad de cambiar la Colación de la base de datos de utf8_unicode_ci a utf8mb4_unicode_ci para soportar caracteres de cuatro bytes como los emojis. Utilice los siguientes pasos para cambiar la base de datos Collation si utiliza un VPS / servidor dedicado con Centos OS y MariaDB. Aquí se explica cómo cambiar uft8 a utf8mb4.
Los siguientes pasos son los mismos para MySQL y MariaDB. Esto es opcional, ya que puede omitir la ejecución de la secuencia de comandos y hará estos cambios por sí mismo. Si se producen errores, vuelva a cambiar manualmente la configuración aquí.
Antelope a barracuda mysql
Motivo: El error suele producirse debido a que Mysql 5.6 e inferiores utilizan el formato de archivo «Antelope». Este formato no puede manejar más de 10 columnas de texto. Por eso se recomienda cambiarlo por el formato barracuda.
Solución: No se puede cambiar simplemente desde la configuración del administrador de Moodle/Totara, pero todavía hay una solución para ello a través de la línea de comandos. Puede seguir los siguientes pasos para convertir el sistema de archivos Antelope a Barracuda.
Webner Solutions es una empresa de desarrollo de software centrada en el desarrollo de sistemas de gestión de agencias de seguros, sistemas de gestión de aprendizaje y aplicaciones de Salesforce. Contáctenos en dev@webners.com para sus aplicaciones de Seguros, eLearning y Salesforce.
Establecer global innodb_file_format=barracuda
UTF-8 es una codificación de caracteres que utilizan la mayoría de los sitios web. Codifica cada uno de los 1.112.064 puntos de código válidos. Para almacenar toda esta información se necesitan cuatro bytes. Los valores más populares están en la región de tres bytes. MySQL, por defecto, sólo utiliza una codificación de tres bytes, por lo que los valores en el rango de cuatro bytes (por ejemplo, caracteres asiáticos y Emojis) no se pueden almacenar. Cualquier intento de introducir un texto que contenga caracteres de cuatro bytes provocará un error en la base de datos de Moodle.
MySQL proporciona soporte completo para UTF-8 de cuatro bytes, pero requiere la configuración de ciertos parámetros de la base de datos. A partir de la versión 3.3 Moodle utiliza UTF-8 completo para MySQL y MariaDB por defecto. Las bases de datos existentes seguirán funcionando con soporte parcial, pero se recomienda pasar a soporte completo.
Moodle viene con un script de Interfaz de Línea de Comandos (CLI) para convertir a UTF-8 completo para MySQL (y MariaDB). Antes de las versiones de Moodle 3.1.5 y 3.2.2 esta herramienta de conversión sólo cambiaba la Colación a alguna variante de ‘utf8_bin’. utf8_unicode_ci’ era la intercalación recomendada. Ahora recomendamos usar ‘utf8mb4_unicode_ci’ que soporta caracteres de cuatro bytes (utf8_unicode_ci sólo soporta tres).
Convertir innodb a barracuda moodle del momento
«unsupported_db_table_row_format» donde cuando la base de datos (MySQL & MariaDB) están haciendo uso de formato de archivo antiguo en el motor InnoDB llamado «Antelope» y se recomiendan para ser actualizado a un formato más reciente «Barracuda». En este post voy a mostrar cómo convertir el formato Antelope en barracuda utilizando la línea de comandos en la plataforma Windows Server.
Recuerdo que cuando salió esta nueva comprobación del servidor, cundió el pánico en los foros de la comunidad Moodle, donde la gente se apresuró a convertir los formatos de las tablas de sus bases de datos de Antelope a Barracuda, pasando por alto el hecho de que se trata de una actualización recomendada y no obligatoria.
Mientras que las actualizaciones requeridas en Moodle son necesarias para que Moodle funcione, las actualizaciones recomendadas no afectan al funcionamiento normal de Moodle, pero se recomiendan porque pueden mejorar el rendimiento (por ejemplo, OpCache), soportar lenguajes adicionales (por ejemplo, php_extension_intl) o soportar columnas de texto adicionales en las tablas de base de datos al convertir de Antelope a Barracuda. Ahora, recordando de nuevo, esto de ninguna manera una actualización obligatoria, sino una actualización recomendada y para la mayoría de la gente esto puede no ser aplicable a menos que esté ejecutando un gran sitio Moodle y la restauración de un curso puede dar errores. Pero, como yo, mucha gente prefiere ver todos los Verdes en su chequeo de entorno, así que os mostraré cómo convertir el formato de tabla de base de datos de Antelope a Barracuda usando dos simples comandos.