En este artículo, discutiremos cómo puede cambiar la zona horaria de MySQL en su servidor para que los datos almacenados en sus bases de datos utilicen de forma predeterminada la zona horaria que ha especificado.
Muchas veces, su zona horaria local será diferente a la zona horaria del servidor MySQL, y esto podría hacer que trabajar con datos dentro de sus bases de datos sea más difícil para usted. Con los siguientes pasos, puede actualizar la zona horaria de su servidor MySQL para que coincida con la suya para facilitar el trabajo con estos datos.
Este cambio requeriría acceso de raíz a un VPS (servidor privado virtual) o un plan de alojamiento de servidor dedicado, o puede comunicarse con nuestro departamento de soporte para cambiar esto en su servidor. También es posible que simplemente necesite saber cómo convertir la hora de MySQL, lo que no requeriría acceso de root y se puede hacer en un servidor compartido.
Cambiar la zona horaria en MySQL
- Inicie sesión en su servidor a través de SSH como usuario raíz.
- Puede ver la configuración de zona horaria actual de MySQL usando el siguiente comando desde la consola:
mysql -e "SELECT @@global.time_zone;"
De forma predeterminada, debería obtener algo similar a:+--------------------+ | @@global.time_zone | +--------------------+ | SYSTEM | +--------------------+
Esto se debe a que, de forma predeterminada, su zona horaria de MySQL se establecerá en el SISTEMA predeterminado del servidor. tiempo. Si está interesado en cambiar la zona horaria de todo el servidor, puede hacerlo configurando la zona horaria en WHM. - Puedes ver el SISTEMA del servidor marca de tiempo usando el siguiente comando:
date
Que devolverá:Mon Nov 26 12:50:07 EST 2012
- Puede ver la marca de tiempo actual reportada por el servidor MySQL usando el siguiente comando:
mysql -e "SELECT NOW();"
Esto debería devolver la marca de tiempo actual:+---------------------+ | NOW() | +---------------------+ | 2012-11-26 12:50:15 | +---------------------+
- Ahora puede editar su archivo de configuración de MySQL con su editor de texto favorito:
vi /etc/my.cnf
Luego agregue la siguiente línea para cambiar de EST (GMT -5:00 ) a CST (GMT -6:00 ):default-time-zone = '-06:00'
Ahora guarde el /etc/my.cnf archivo con su nuevo valor predeterminado.
- Para activar el cambio, querrá reiniciar el servicio MySQL con el siguiente comando:
service mysql restart
- Ahora, si intenta ver la configuración de la zona horaria global nuevamente con el comando:
mysql -e "SELECT @@global.time_zone;"
Ahora debería recuperar su nuevo valor predeterminado:+--------------------+ | @@global.time_zone | +--------------------+ | -06:00 | +--------------------+
- También deberías ver ahora que NOW() la función también se ha actualizado:
mysql -e "SELECT NOW();"
Esto debería devolver la marca de tiempo actual:+---------------------+ | NOW() | +---------------------+ | 2012-11-26 11:50:15 | +---------------------+
Ahora debe saber cómo actualizar la configuración de la zona horaria del servidor MySQL, para ayudar a asegurarse de que los datos almacenados en las bases de datos sean fáciles de usar. También puede usar zonas horarias con nombre en lugar de GMT -6:00 formato, pero esto primero requeriría que cargue las tablas de zona horaria en el mysql base de datos. Se puede encontrar más información sobre esto en el sitio de MySQL con respecto a mysql_tzinfo_to_sql y la carga de las tablas de zonas horarias.