Zon Waktu MySQL: Panduan Lengkap
Soalan: Adakah terdapat senarai komprehensif zon waktu MySQL yang tersedia?
Jawapan: Ya, tetapi ia berbeza-beza bergantung pada sistem pengendalian hos. Untuk mengakses senarai, anda perlu memuatkan data zon waktu ke dalam MySQL.
Cara Memuatkan Data Zon Masa:
mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
Nota: Perintah ini adalah untuk sistem Unix; yang setara untuk Windows tidak diketahui.
Zon Waktu Penyenaraian:
Setelah data dimuatkan, anda boleh melihat senarai zon waktu:
USE mysql; SELECT * FROM `time_zone_name`;
Waktu Tempatan Calgary:
Untuk memaparkan masa dalam waktu tempatan Calgary, gunakan sintaks berikut:
SELECT CONVERT_TZ(CURRENT_TIMESTAMP, 'GMT', 'America/Edmonton');
Tambahan Nota:
TRUNCATE `time_zone` ; TRUNCATE `time_zone_leap_second` ; TRUNCATE `time_zone_name` ; TRUNCATE `time_zone_transition` ; TRUNCATE `time_zone_transition_type` ;
Kemas Kini Zon Waktu Automatik:
Anda boleh menyediakan sistem automatik untuk mengemas kini zon waktu MySQL apabila zon waktu sistem berubah.
Untuk MySQL >= 5.6.6:
mysql_config_editor set --login-path=client --host=localhost --user=root --password
Untuk MySQL < 5.6.6:
Buat fail ~/.my.cnf dengan kandungan berikut:
[client] user=root password=yourMysqlRootPW
Kemudian, tambahkan skrip berikut pada crontab untuk dijalankan setiap hari:
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" fiIngat, ini kebanyakannya belum diuji. Jika anda menghadapi sebarang isu, laporkannya untuk mengemas kini jawapan sewajarnya.
Atas ialah kandungan terperinci Bagaimanakah saya boleh mendapatkan senarai komprehensif zon waktu MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!