Masz trzy sposoby rozwiązania tego problemu.
mysql_tzinfo_to_sql program ładuje tabele stref czasowych w bazie mysql. Jest używany w systemach, które posiadają bazę danych zoneinfo (zestaw plików opisujących strefy czasowe). Przykładami takich systemów są Linux, FreeBSD, Solaris i OS X. Jedną z prawdopodobnych lokalizacji dla tych plików jest katalog /usr/share/zoneinfo (/usr/share/lib/zoneinfo w Solarisie). Jeśli twój system nie ma bazy danych o strefach, możesz użyć pakietu do pobrania opisanego w rozdziale 11.6, „Obsługa stref czasowych serwera MySQL”.
mysql_tzinfo_to_sql można wywołać na kilka sposobów:
shell> mysql_tzinfo_to_sql tz_dir
shell> mysql_tzinfo_to_sql tz_file tz_name
shell> mysql_tzinfo_to_sql --leap tz_file
W przypadku pierwszej składni wywołania przekaż nazwę ścieżki katalogu zoneinfo do mysql_tzinfo_to_sql i wyślij wyjście do mysql program. Na przykład:
shell> mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql
mysql_tzinfo_to_sql odczytuje pliki stref czasowych systemu i generuje z nich instrukcje SQL. mysql przetwarza te instrukcje, aby załadować tabele stref czasowych.
Druga składnia powoduje, że mysql_tzinfo_to_sql aby załadować pojedynczy plik strefy czasowej tz_file która odpowiada nazwie strefy czasowej tz_name:
shell> mysql_tzinfo_to_sql tz_file tz_name | mysql -u root mysql
Jeśli Twoja strefa czasowa musi uwzględniać sekundy przestępne, wywołaj mysql_tzinfo_to_sql używając trzeciej składni, która inicjuje informacje o sekundzie przestępnej. plik_tz to nazwa pliku strefy czasowej:
shell> mysql_tzinfo_to_sql --leap tz_file | mysql -u root mysql
Po uruchomieniu mysql_tzinfo_to_sql , najlepiej zrestartować serwer, aby nie używał żadnych danych strefy czasowej, które były wcześniej buforowane.
źródło:https://dev.mysql .com/doc/refman/5.7/en/mysql-tzinfo-to-sql.html
default-time-zone = +0:00
# default-time-zone = UTC
Spowoduje to, że zamiast tego odziedziczy strefę czasową z systemu operacyjnego.