Problema
X columnas non son compatibles co uso de zonas horarias
Na páxina principal de GLPI 9.5 aparece a advertencia:
X columnas non son compatibles co uso de zonas horarias
Non se permite o acceso á base de datos de zona horaria (MySQL)
No perfil dos usuarios dunha instalación nova ou actualizada a GLPI 9.5 mostra a seguinte mensaxe de advertencia:
Non se permite o acceso á base de datos de zona horaria (MySQL).
Explicación
A partir da versión 9.5 de GLPI os campos de data da base de datos deixan de ser DATETIME para converterse en TIMEZONE. Para instalacións nas que se traballe en varias zonas horarias esta é unha gran mellora, dado que cada usuario recibirá as horas en función da configuración do seu perfil, independentemente da hora do sistema/base de datos.
Este cambio non se produce de maneira automática, e no caso das actualizacións haberá que realizar unha migración de todos os campos DATETIME a TIMEZONE.
Solución
Configurar MariaDB
Terás que inicializar os datos das zonas horarias das zonas horarias do teu sistema, para isto executa o seguinte comando co usuario root de MariaDB:
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -p -u root mysql
Establecer unha zona horaria
Edita o arquivo de configuración:
vim /etc/mysql/my.cnf
(a ruta depende do sistema operativo) engade a [ mysqld] a zona horaria por defecto:
default-time-zone = 'Europe/Madrid'
(neste exemplo Europe/Madrid)
Reinicia o servizo
Reinicia o servizo:
systemctl restart mariadb
Fornecer privilexios ao usuario de DB de GLPI
O usuario da base de datos de GLPi debe ter acceso de lectura na táboa mysql.time_ zone_ name . Supoñendo que o usuario de GLPi é glpi@localhost, executa os seguintes comandos:
mysql -u root -p
GRANT SELECT ON `mysql`.`time_zone_name` TO 'glpi'@'localhost'; FLUSH PRIVILEGES;
Migración
Migrar as bases de datos existentes á nova zona horaria, escribe o seguinte comando: bin/console glpi:migration:timestamps
Resultado
O usuario xa pode establecer zonas horarias e xa non se amosan adventencias deste tipo.
Deixa unha resposta