Saludos,
Tengo el mismo problema con la versión de Moodle 3.1, la variable de character_set_server de MySQL es latin1. Pero yo no tengo privilegios para modificar las variables y quienes administran el servidor no harán el cambio... en ese caso ¿cuál podría ser la solución? lo único que se me ocurre como una medida un poco desesperada (y sin pensar en las posibles consecuencias) es quitar el COLLATE de las consultas SQL, por ejemplo... lo probé con la función sql_like para que me permitiera subir usuarios con un archivo csv (en esa funcionalidad es donde me percaté del error) y funcionó.
¿Es factible hacerlo de esa manera? ¿Alguna consecuencia de ese cambio? además de tener que replicarlo en caso de actualizar Moodle (que lo dudo, porque ese servidor no permite una versión más nueva).
Gracias de antemano por sus observaciones.