如何解决此错误“错误 1298 (HY000):未知或不正确的时区:‘UTC’”?

Eva*_*oll 23 mysql mariadb odbc errors timezone

当我运行以下命令时,出现错误,但是我的一个脚本需要它。

SET time_zone = 'UTC';
ERROR 1298 (HY000): Unknown or incorrect time zone: 'UTC'
Run Code Online (Sandbox Code Playgroud)

Eva*_*oll 29

只需运行 mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql -p

$ mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql -p
Enter password: 
Warning: Unable to load '/usr/share/zoneinfo/iso3166.tab' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/leap-seconds.list' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/zone.tab' as time zone. Skipping it.
Warning: Unable to load '/usr/share/zoneinfo/zone1970.tab' as time zone. Skipping it.
Run Code Online (Sandbox Code Playgroud)

琐事:如果你想知道它HY00代表什么(我几年后问的后续问题)......


小智 6

正如kaiser 所建议的,不需要尾部斜杠,但没有指定 mysql,因为数据库 mariadb 抱怨缺少数据库。我找到

$ mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p -Dmysql
Run Code Online (Sandbox Code Playgroud)

是解决 Mariadb 164 中问题的正确方法。