Solucionar problemas
Error de zonas horarias de GLPI con MariaDB o MySQL
Si al actualizar o instalar GLPI ves el siguiente mensaje durante la verificación de requisitos:
Datos de la zona horaria de la base de datos Activar el uso de zonas horarias. Las zonas horarias no parecen estar cargadas
El aviso confirma que GLPI no puede habilitar las zonas horarias, pero la versión de GLPI determina si falta únicamente cargar los datos o también un permiso.
Por qué ocurre este error
GLPI 9.5 incorporó el uso de TIMESTAMP para trabajar con zonas horarias. En todos los casos, MariaDB o MySQL debe tener cargadas sus tablas de zonas horarias.
- GLPI 10.0.20 o posterior: no necesita acceso del usuario de la aplicación a
mysql.time_zone_name. - GLPI anterior a 10.0.20: además de los datos cargados, necesita
SELECTsobremysql.time_zone_name.
Por qué no puedes solucionarlo tú mismo
En un hosting compartido, la tabla mysql.time_zone_name pertenece al sistema de la base de datos, no a tu cuenta. Esto significa que:
- No tienes permisos administrativos para cargar las zonas horarias con
mariadb-tzinfo-to-sqlo su aliasmysql_tzinfo_to_sql. - No puedes ejecutar
GRANTsobre tablas del sistema si una versión antigua de GLPI lo requiere.
Estas operaciones requieren privilegios administrativos sobre el servidor de base de datos, no necesariamente una cuenta llamada root.
Cómo solucionarlo
Para que activemos el soporte de zonas horarias en tu instalación de GLPI:
- Accede al área de clientes.
- Dirígete a la sección Ayuda y abre un nuevo ticket.
- Indica que necesitas activar el soporte de zonas horarias en MariaDB/MySQL para GLPI e incluye la versión de GLPI y el nombre de tu usuario de base de datos, que encontrarás en
config/config_db.php. No envíes la contraseña.
Nuestro equipo realizará las configuraciones necesarias y te notificará cuando esté listo para que puedas continuar con la actualización.
Si actualizas desde una versión antigua y GLPI detecta columnas DATETIME, revisa también el comando oficial php bin/console glpi:migration:timestamps; puede ser una migración larga y debe ensayarse con copia verificada.
Consulta la documentación oficial de zonas horarias de GLPI. MySQL limita TIMESTAMP a enero de 2038; MariaDB amplió ese rango a partir de la versión 11.5. Valora el límite efectivo del servidor si la aplicación necesita almacenar fechas posteriores.
Comprobar tras la intervención
Vuelve a ejecutar la comprobación de requisitos con el mismo PHP y conexión que utiliza GLPI. Después prueba la visualización y edición de una fecha con la zona esperada. Cambiar la zona en PHP no carga las tablas de zonas de MySQL ni completa una migración de columnas.
Si se solicita una migración de timestamps, conserva el estado inicial y revisa su duración y resultado en un clon. No ejecutes el comando varias veces en paralelo ni cambies directamente todas las columnas por SQL sin el procedimiento de esa versión.
También te puede ayudar
- Error "Argument X passed OrderProductForViewing must be of the type string" Identifica el argumento y la fila exactos que entregan NULL al visualizar un pedido de PrestaShop, s...
- Error "Shop not found at line xxx in file classes/shop/Shop.php" Localiza Shop not found revisando la URL solicitada, shop_url y el ámbito de PS_SHOP_DEFAULT antes d...
- PrestaShopException: diagnosticar Invalid address Localiza la referencia exacta que provoca Invalid address y sanea solo carritos sin pedido, preserva...
- PrestaShop, tamaño excesivo de la tabla layered_filter_block Mide y limpia la caché de Búsqueda por facetas, distingue su índice de precios y actualiza el módulo...
¿Algo no cuadra o ha cambiado? Cuéntanoslo y lo revisamos.