Rumah >pangkalan data >tutorial mysql >Bagaimanakah saya boleh mencari senarai lengkap zon waktu MySQL?

Bagaimanakah saya boleh mencari senarai lengkap zon waktu MySQL?

Patricia Arquette
Patricia Arquetteasal
2024-11-03 00:01:02835semak imbas

How can I find an exhaustive list of MySQL time zones?

Senarai Lengkap Zon Waktu MySQL

Pengenalan

MySQL menggunakan zon waktu untuk mengendalikan pelbagai pengiraan tarikh dan masa, tetapi kebiasaannya pengguna menghadapi cabaran dalam mengakses senarai komprehensif zon waktu MySQL.

Pergantungan Zon Masa MySQL pada Sistem Pengendalian Hos

Nilai zon_masa yang sah dalam tetapan MySQL biasanya bergantung pada sistem pengendalian hos. Walau bagaimanapun, mencari senarai lengkap zon waktu yang disokong boleh mencabar.

Memuatkan Data Zon Masa ke dalam MySQL

Secara lalai, MySQL tidak memuatkan data zon waktu melainkan secara manual dimuatkan. Untuk memuatkannya, laksanakan arahan berikut:

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

Selepas memuatkan data, laksanakan yang berikut untuk melihat senarai zon waktu:

USE mysql;
SELECT * FROM `time_zone_name`;

Memunggah Data Zon Masa

Jika dikehendaki, data zon waktu boleh dipunggah daripada MySQL dengan melaksanakan:

TRUNCATE `time_zone` ;
TRUNCATE `time_zone_leap_second` ;
TRUNCATE `time_zone_name` ;
TRUNCATE `time_zone_transition` ;
TRUNCATE `time_zone_transition_type` ;

Nota Menjatuhkan Jadual

Jangan sekali-kali JATUHKAN jadual ini, kerana ia boleh membawa kepada isu yang teruk.

Kemas Kini Zon Waktu Automatik

Untuk memastikan zon waktu dikemas kini dengan kerap, anda boleh mendayakan log masuk akar tanpa menggesa kata laluan dan sediakan tugas cron untuk melaksanakan skrip berikut sekali sehari:

#!/bin/bash

if [ `find /usr/share/zoneinfo -mtime -1 | grep -v '\.tab' | wc -l` -gt 0 ]; then
    echo "Updating MySQL timezone info"
    mysql_tzinfo_to_sql /usr/share/zoneinfo 2>/dev/null | mysql -u root mysql
    echo "Done!\n"
fi

Mengkonfigurasi Zon Masa untuk Calgary

Untuk memaparkan masa dalam Waktu tempatan Calgary, gunakan zon waktu berikut:

America/Edmonton

Contoh Pertanyaan

Pertanyaan berikut menukarkan cap waktu kepada waktu tempatan Calgary:

SELECT CONVERT_TZ('2023-03-08 15:00:00', 'GMT', 'America/Edmonton');

Atas ialah kandungan terperinci Bagaimanakah saya boleh mencari senarai lengkap zon waktu MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn