我需要为项目运行实用程序mysql_tzinfo_to_sql
,每当我尝试运行第一个命令时:
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
我收到以下错误:
ERROR 1105 (HY000) at line 46426: ORDER BY ignored as there is a user-defined clustered index in the table 'time_zone_transition'
我的理解是,因为ORDER BY
没有处理,所以不会进一步更新时区,虽然我从未接触过这个基础,但我不确定如何才能最好地解决这个问题。
同样在尝试运行时:
mysql_tzinfo_to_sql tz_file tz_name | mysql -u root -p mysql
我收到以下错误:
mysql_tzinfo_to_sql: Can't create/write to file 'tz_file' (Errcode: 2 "No such file or directory")
Problems with zoneinfo file 'tz_file'
编辑:我正在运行macOS Sierra(10.12.6( 我试图做这一切,因为:https://docs.djangoproject.com/en/1.10/ref/databases/#mysql-time-zone-definitions
我有一个答案,我认为应该是安全的,应该绕过你遇到的错误。 从文档中,我认为表time_zone_transition
默认情况下应该是空的。 所以,我认为您可以尝试截断此表,然后删除所有索引:
DELETE FROM time_zone_transition
听起来不知何故,此表上有一个或多个索引导致问题。 我建议只删除所有索引:
SHOW INDEX FROM time_zone_transition
然后对每个索引执行以下操作:
ALTER TABLE time_zone_transition DROP INDEX some_index
最后,尝试再次运行初始命令:
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
如果这仍然失败,并出现相同的错误,那么我们试图修复的错误不是问题的根本原因。 然后,我们将有更多的工作要做。