- la fecha y hora del servidor mysql se pueden obtener vía current_timestamp() o now():
mysql> SELECT now();
+———————+
| now() |
+———————+
| 2018-03-27 10:38:52 |
+———————+
1 row in set (0.00 sec) - luego, para modificar la zona horaria,
mysql> SET time_zone = '+1:00';
Query OK, 0 rows affected (0.01 sec)y, para comprobar que se ha introducido el cambio,
mysql> SHOW VARIABLES LIKE '%time_zone%';
+——————+——–+
| Variable_name | Value |
+——————+——–+
| system_time_zone | PDT |
| time_zone | +01:00 |
+——————+——–+
2 rows in set (0.00 sec) - si la consulta no recoge el cambio horario (daylight saving), cabe introducir una zona horaria («Europe/Madrid») en lugar de la diferencia horaria respecto al GMT («+1:00»):
mysql> SET time_zone = 'Europe/Madrid';
Query OK, 0 rows affected (0.08 sec) - si el servidor no permite la configuración de la zona horaria por otra vía, me temo que será necesario ejecutar esta consulta antes de cada operación.