Chương trình mysql_tzinfo_to_sql giúp tải các bảng múi giờ trong cơ sở dữ liệu mysql. Nó được sử dụng trên các hệ thống có cơ sở dữ liệu múi giờ, tức là tập hợp các tệp mô tả múi giờ. Ví dụ về các hệ thống như vậy bao gồm Linux, FreeBSD, Solaris và macOS. Một vị trí có thể xảy ra nhất cho các tệp này là thư mục / usr / share / zoneinfo (/ usr / share / lib / zoneinfo trên Solaris).
Gọi mysql_tzinfo_to_sql
Nếu hệ thống không có cơ sở dữ liệu zoneinfo, thì có thể cài đặt gói có thể tải xuống. Mysql_tzinfo_to_sql có thể được gọi theo nhiều cách. Một số trong số chúng đã được hiển thị bên dưới -
shell> mysql_tzinfo_to_sql tz_dir (or) shell> mysql_tzinfo_to_sql tz_file tz_name (or) shell> mysql_tzinfo_to_sql --leap tz_file
Trong cú pháp lệnh gọi đầu tiên, tên đường dẫn thư mục zoneinfo được chuyển cho mysql_tzinfo_to_sql. Kết quả đầu ra được gửi đến chương trình mysql.
Hãy để chúng tôi lấy một ví dụ để hiểu điều này -
shell> mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql
mysql_tzinfo_to_sql đọc các tệp múi giờ hệ thống của người dùng và tạo các câu lệnh SQL từ chúng. Sau đó, mysql xử lý các câu lệnh này để tải vào các bảng múi giờ.
Lần gọi thứ hai khiến mysql_tzinfo_to_sql tải một tệp tz_file của múi giờ tương ứng với tên múi giờ tz_name như được hiển thị bên dưới -
shell> mysql_tzinfo_to_sql tz_file tz_name | mysql -u root mysql
Nếu múi giờ của người dùng cần tính đến giây nhuận, thì mysql_tzinfo_to_sql có thể được gọi với sự trợ giúp của cú pháp thứ ba. Cú pháp thứ ba này khởi tạo thông tin thứ hai nhảy vọt. Tz_file là tên của tệp múi giờ của bạn -
shell> mysql_tzinfo_to_sql --leap tz_file | mysql -u root mysql
Sau khi chạy mysql_tzinfo_to_sql, bạn nên khởi động lại máy chủ để máy chủ không tiếp tục sử dụng dữ liệu múi giờ đã lưu trong bộ nhớ cache trước đó.