Troubleshooting
GLPI time zone error with MariaDB or MySQL
If you see the following message during the requirements check when updating or installing GLPI:
Datos de la zona horaria de la base de datos Activar el uso de zonas horarias. Las zonas horarias no parecen estar cargadas
(That is: database time zone data; enable the use of time zones; time zones do not seem to be loaded.)
The notice confirms that GLPI cannot enable time zones, but the GLPI version determines whether only the data needs to be loaded or a permission is needed as well.
Why this error happens
GLPI 9.5 introduced the use of TIMESTAMP to work with time zones. In every case, MariaDB or MySQL must have its time zone tables loaded.
- GLPI 10.0.20 or later: the application user does not need access to
mysql.time_zone_name. - GLPI earlier than 10.0.20: as well as the loaded data, it needs
SELECTonmysql.time_zone_name.
Why you cannot fix it yourself
On shared hosting, the mysql.time_zone_name table belongs to the database system, not to your account. This means that:
- You do not have administrative permissions to load the time zones with
mariadb-tzinfo-to-sqlor its aliasmysql_tzinfo_to_sql. - You cannot run
GRANTon system tables if an old version of GLPI requires it.
These operations require administrative privileges on the database server, not necessarily an account called root.
How to fix it
For us to enable time zone support for your GLPI installation:
- Log in to the client area.
- Go to the Help section and open a new ticket.
- Say that you need to enable time zone support in MariaDB/MySQL for GLPI and include the GLPI version and your database user name, which you will find in
config/config_db.php. Do not send the password.
Our team will make the necessary changes and let you know when it is ready so you can carry on with the update.
If you are updating from an old version and GLPI detects DATETIME columns, also check the official php bin/console glpi:migration:timestamps command; it can be a long migration and should be tested with a verified backup.
See the official GLPI time zone documentation. MySQL limits TIMESTAMP to January 2038; MariaDB extended that range from version 11.5. Consider the server's effective limit if the application needs to store later dates.
Check after the change
Run the requirements check again with the same PHP and connection GLPI uses. Then test viewing and editing a date in the expected time zone. Changing the time zone in PHP does not load the MySQL time zone tables or complete a column migration.
If a timestamp migration is requested, keep the initial state and review its duration and result on a clone. Do not run the command several times in parallel or change all the columns directly with SQL without the procedure for that version.
You may also find useful
- Error "Argument X passed OrderProductForViewing must be of the type string" Identify the exact argument and row that deliver NULL when viewing a PrestaShop order, without bulk-...
- Error "Shop not found at line xxx in file classes/shop/Shop.php" Track down Shop not found by checking the requested URL, shop_url and the scope of PS_SHOP_DEFAULT b...
- PrestaShopException: diagnosing Invalid address Find the exact reference behind Invalid address and clean up only carts with no order, preserving th...
- PrestaShop, layered_filter_block table grows too large Measure and clear the Faceted search cache, tell it apart from its price index and update the module...
Something wrong or out of date? Tell us and we will review it.