Resolviendo el Error de Unicode en la Instalación de Moodle con MariaDB

Recientemente, al intentar instalar Moodle 4 en un entorno local utilizando MariaDB, me encontré con el siguiente error:

Es necesario que almacene todos sus datos en formato Unicode (UTF-8). Las instalaciones nuevas deberían ejecutarse en bases de datos cuyo juego de caracteres por defecto fuera Unicode.

Este error se debe a que Moodle requiere que tanto la base de datos como las tablas estén configuradas para usar el conjunto de caracteres UTF-8, específicamente utf8mb4, que es capaz de almacenar todos los caracteres Unicode. A continuación, te cuento cómo lo solucioné.

Solución al Problema de Unicode en Moodle

Primero, verifiqué la configuración de mi servidor MariaDB, asegurándome de que estuviera utilizando el conjunto de caracteres correcto. Modifiqué mi archivo my.ini de MariaDB, agregando las siguientes líneas en la sección [mysqld]:

[client] 
default-character-set = utf8mb4

[mysqld] 
innodb_file_format = Barracuda 
innodb_file_per_table = 1 
innodb_large_prefix = 1

character-set-client-handshake = FALSE 
character-set-server = utf8mb4 
collation-server = utf8mb4_unicode_ci

[mysql] 
default-character-set = utf8mb4

Después de reiniciar el servidor de bases de datos, también me aseguré de que la base de datos de Moodle estuviera correctamente configurada. Para ello, ejecuté los siguientes comandos en MariaDB:

ALTER DATABASE moodle CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Además, verifiqué que todas las tablas estuvieran utilizando el mismo conjunto de caracteres, y en caso contrario, utilicé el siguiente comando para corregirlas:

ALTER TABLE nombre_de_tabla CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Modificación del Archivo config.php

Finalmente, modifiqué el archivo config.php de Moodle para asegurarme de que estuviera correctamente configurado para utilizar Unicode. Este es el fragmento relevante del archivo:

$CFG->dboptions = array (
  'dbpersist' => 0,
  'dbport' => '',
  'dbsocket' => '',
  'dbcollation' => 'utf8mb4_unicode_ci',
);

Tras realizar estas modificaciones, el error desapareció y Moodle pudo instalarse correctamente con MariaDB utilizando UTF-8. ¡Problema resuelto!

Next Post Previous Post
No Comment
Add Comment
comment url