Bagaimanakah Saya Boleh Menggunakan Zon Masa dengan Berkesan dalam MySQL?

DDD
Lepaskan: 2024-11-05 18:46:02
asal
256 orang telah melayarinya

How Can I Effectively Use Time Zones in MySQL?

Zon Waktu MySQL

Tertanya-tanya tentang sokongan zon waktu dalam MySQL? Berikut ialah panduan komprehensif untuk membantu anda memahami dan menggunakan zon waktu MySQL dengan berkesan:

Senarai Lengkap Zon Waktu MySQL

Secara lalai, MySQL tidak menyertakan maklumat zon waktu. Untuk memuatkan data zon waktu ke dalam MySQL, laksanakan arahan berikut:

mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root -p mysql
Salin selepas log masuk

Setelah dimuatkan, anda boleh melihat senarai zon waktu yang tersedia dengan menjalankan:

USE mysql;
SELECT * FROM `time_zone_name`;
Salin selepas log masuk

Menggunakan Zon Waktu

Untuk menentukan zon waktu bagi nilai cap masa, gunakan fungsi CONVERT_TZ():

CONVERT_TZ('2012-06-07 12:00:00', 'GMT', 'America/New_York')
Salin selepas log masuk

Ini akan menukar cap masa kepada waktu tempatan Calgary.

Memuatkan Data Zon Masa Secara Automatik

Untuk mengemas kini zon waktu MySQL secara automatik apabila zon waktu sistem berubah, konfigurasikan MySQL untuk membenarkan log masuk akar tanpa kata laluan:

MySQL >= 5.6.6

mysql_config_editor set --login-path=client --host=localhost --user=root --password
Salin selepas log masuk

MySQL < 5.6.6

Buat fail ~/.my.cnf:

user=root
password=yourMysqlRootPW
Salin selepas log masuk

Kemas Kini Skrip

Tambahkan skrip berikut pada crontab untuk mengemas kini zon waktu setiap hari:

#!/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

Petua Tambahan

  • Maklumat zon waktu mengambil masa kira-kira 5 MB dalam MySQL.
  • Elakkan daripada menjatuhkan jadual zon waktu; sebaliknya, gunakan TRUNCATE.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan Zon Masa dengan Berkesan dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan