Bagaimana cara mengatasi kesalahan ini, "ERROR 1298 (HY000): Zona waktu tidak diketahui atau salah: 'UTC'"?

14

Ketika saya menjalankan perintah berikut ini saya mendapatkan kesalahan, namun salah satu skrip saya mengharuskannya.

SET time_zone = 'UTC';
ERROR 1298 (HY000): Unknown or incorrect time zone: 'UTC'
Evan Carroll
sumber

Jawaban:

16

Cukup jalankan 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.

Trivia: Jika Anda ingin tahu apa HY00artinya (tindak lanjut saya bertanya bertahun-tahun kemudian) ....

Evan Carroll
sumber
Mungkinkah garis miring tidak benar-benar dihargai mysql_tzinfo_to_sql? :)
kaiser
4

Saya ingin menambahkan ini sebagai komentar untuk jawaban yang diterima, tetapi saya tidak memiliki reputasi yang dibutuhkan. Seperti @kaiser menyarankan, trailing slash tidak diperlukan tetapi tanpa menentukan mysql karena mariadb database mengeluh tentang database yang hilang. Saya menemukan itu

$ mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p -Dmysql

adalah cara yang tepat untuk menyelesaikan masalah di Mariadb 164.

Tuan salah
sumber
1
Tampaknya ini menambah nilai pada utas. Saya memberi Anda +1 - Saya memiliki masalah dengan seluruh no comments till 50kebijakan. Apa yang dapat Anda lakukan adalah menandai "jawaban" Anda sendiri sebagai komentar - Saya pikir itu adalah kebijakan yang disarankan? Ada "penghalang untuk masuk" baik-baik saja, tetapi ada juga alasan untuk itu.
Vérace