sql >> Base de Datos >  >> RDS >> Mysql

SQLSTATE [HY000]:error general:1298 Zona horaria desconocida o incorrecta:ventanas 'UTC'

Tienes tres formas de resolver este problema.

El mysql_tzinfo_to_sql El programa carga las tablas de zonas horarias en la base de datos mysql. Se usa en sistemas que tienen una base de datos zoneinfo (el conjunto de archivos que describen las zonas horarias). Ejemplos de estos sistemas son Linux, FreeBSD, Solaris y OS X. Una ubicación probable para estos archivos es el directorio /usr/share/zoneinfo (/usr/share/lib/zoneinfo en Solaris). Si su sistema no tiene una base de datos zoneinfo, puede usar el paquete descargable que se describe en la Sección 11.6, "Compatibilidad con la zona horaria del servidor MySQL".

mysql_tzinfo_to_sql se puede invocar de varias formas:

shell> mysql_tzinfo_to_sql tz_dir
shell> mysql_tzinfo_to_sql tz_file tz_name
shell> mysql_tzinfo_to_sql --leap tz_file

Para la primera sintaxis de invocación, pase el nombre de la ruta del directorio zoneinfo a mysql_tzinfo_to_sql y envíe la salida a mysql programa. Por ejemplo:

shell> mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql

mysql_tzinfo_to_sql lee los archivos de zona horaria de su sistema y genera sentencias SQL a partir de ellos. mysql procesa esas declaraciones para cargar las tablas de zonas horarias.

La segunda sintaxis provoca mysql_tzinfo_to_sql para cargar un único archivo de zona horaria tz_file que corresponde a un nombre de zona horaria tz_name:

shell> mysql_tzinfo_to_sql tz_file tz_name | mysql -u root mysql

Si su zona horaria necesita tener en cuenta los segundos bisiestos, invoque mysql_tzinfo_to_sql utilizando la tercera sintaxis, que inicializa la información del segundo intercalar. archivo_tz es el nombre de su archivo de zona horaria:

shell> mysql_tzinfo_to_sql --leap tz_file | mysql -u root mysql

Después de ejecutar mysql_tzinfo_to_sql , lo mejor es reiniciar el servidor para que no siga utilizando ningún dato de zona horaria previamente almacenado en caché.

fuente:https://dev.mysql .com/doc/refman/5.7/en/mysql-tzinfo-to-sql.html

default-time-zone = +0:00
# default-time-zone = UTC

Esto hará que herede la zona horaria del sistema operativo.