En Qbit Mexhico, tenemos nuevo servidor con linux, el cual es necesario configurar desde los fierros.. y aunque la mayoría de cosas que instalamos no requieren mucha configuración, algunas otras sí y ese es el caso del timezone de mysql.
En esta ocasión reconfiguramos el timezone a nuestro servidor mediante el comando dpkg-reconfigure
sudo dpkg-reconfigure tzdata |
Luego nos conectamos al servidor de mysql y haciendo la consulta “SELECT NOW();” debería ver algo como:
mysql> SELECT NOW(); +---------------------+ | NOW() | +---------------------+ | 2015-02-09 11:32:39 | +---------------------+ 1 row in set (0.00 sec) |
Si notan que la fecha y hora no coinciden con su hora local, entonces algo con el timezone está mal, nuevamente pueden hacer otra consulta para verificar que timezone se está utilizando:
mysql> SELECT @@global.time_zone; +--------------------+ | @@global.time_zone | +--------------------+ | SYSTEM | +--------------------+ 1 row in set (0.00 sec) |
Sorpresa, dice que se está utilizando el timezone del sistema (ósea que debería estar bien porque lo acabo de configurar).. entonces ya para corregirlo lo que se necesita hacer es modificar el timezone de la tabla mysql y setear a mano el valor que desean, para nuestro caso lo definimos con la zona horaria de la Ciudad de México, entonces:
mysql> SET GLOBAL time_zone = "America/Mexico_City"; Query OK, 0 rows affected (0.00 sec) |
Luego de esto deben de hacer un sudo service mysql restart y si revisan la zona horaria mediante las consultas descritas aquí arriba, la hora del sistema y la hora de mysql deben coincidir con la hora local, si no están seguros de como escribir su zona horaria, pueden hacer una búsqueda utilizando esta consulta.
mysql> SELECT * FROM mysql.time_zone_name WHERE Name LIKE '%exico%'; +---------------------------+--------------+ | Name | Time_zone_id | +---------------------------+--------------+ | America/Mexico_City | 160 | | Mexico/BajaNorte | 508 | | Mexico/BajaSur | 509 | | Mexico/General | 510 | ... +---------------------------+--------------+ 12 rows in set (0.00 sec) |
Y espero que con esto se corriga el problema, de no ser así, tendrán que continuar investigando.. claro, si encuentran la solución, pasen a dejar su comentario.
La información completa de estos comandos y como utilizarlos la encontrarán directamente desde la página de mysql en http://dev.mysql.com/doc/refman/5.1/en/time-zone-support.html
Happy Coding!
Eso lo haz hecho en el mismo servidor del hosting? yo quiero hacer esto en el servidor como lo hago? no localmente 🙁
así es Howard, todo esto lo he hecho en el mismo servidor.. vale la pena decir que ese servidor es un vps y no un servidor compartido.
Saludos
Gracias por tu ayuda! Me sirvió, pero realmente no hace falta configurar la zona horaria de MySQL si ya está con SYSTEM. Si cambias la del sistema con el comando que indicas, y luego reinicias mysql, lee la hora correcta.
Gracias y saludos
Gracias andaba buscando algunas cosas de MySQL y vi tu Post, es interesante cambiar la zona horaria a tu server, yo en particular en los proyectos he usado UTC Cero para no entrar en conflicto con el horario de cada usuario y más cuando son usuario de diferentes zonas.
Pero me has dado una idea, gracias y exito!!!