โปรแกรม mysql_tzinfo_to_sql ช่วยโหลดตารางเขตเวลาในฐานข้อมูล mysql มันถูกใช้กับระบบที่มีฐานข้อมูล zoneinfo นั่นคือชุดของไฟล์ที่อธิบายเขตเวลา ตัวอย่างของระบบดังกล่าว ได้แก่ Linux, FreeBSD, Solaris และ macOS ตำแหน่งที่เป็นไปได้มากที่สุดสำหรับไฟล์เหล่านี้คือไดเร็กทอรี /usr/share/zoneinfo (/usr/share/lib/zoneinfo บน Solaris)
เรียกใช้ mysql_tzinfo_to_sql
หากระบบไม่มีฐานข้อมูล zoneinfo สามารถติดตั้งแพ็คเกจที่ดาวน์โหลดได้ mysql_tzinfo_to_sql สามารถเรียกใช้ได้หลายวิธี บางส่วนได้แสดงไว้ด้านล่าง −
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
ในไวยากรณ์การเรียกใช้แรก ชื่อพาธไดเร็กทอรี zoneinfo ถูกส่งไปยัง mysql_tzinfo_to_sql ผลลัพธ์จะถูกส่งไปยังโปรแกรม mysql
ให้เรายกตัวอย่างเพื่อทำความเข้าใจสิ่งนี้ -
shell> mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -u root mysql
mysql_tzinfo_to_sql อ่านไฟล์เขตเวลาของระบบของผู้ใช้และสร้างคำสั่ง SQL จากไฟล์เหล่านั้น จากนั้น mysql จะประมวลผลคำสั่งเหล่านี้เพื่อโหลดลงในตารางเขตเวลา
การเรียกครั้งที่สองทำให้ mysql_tzinfo_to_sql โหลดไฟล์โซนเวลาเดียว tz_file ซึ่งสอดคล้องกับชื่อโซนเวลา tz_name ดังที่แสดงด้านล่าง -
shell> mysql_tzinfo_to_sql tz_file tz_name | mysql -u root mysql
หากเขตเวลาของผู้ใช้จำเป็นต้องนับเวลาเป็นวินาที mysql_tzinfo_to_sql สามารถเรียกใช้งานได้โดยใช้ไวยากรณ์ที่สาม ไวยากรณ์ที่สามนี้เริ่มต้นข้อมูลวินาทีกระโดด tz_file คือชื่อไฟล์เขตเวลาของคุณ -
shell> mysql_tzinfo_to_sql --leap tz_file | mysql -u root mysql
หลังจากเรียกใช้ mysql_tzinfo_to_sql ขอแนะนำให้รีสตาร์ทเซิร์ฟเวอร์เพื่อไม่ให้ใช้ข้อมูลเขตเวลาที่แคชไว้ก่อนหน้านี้ต่อไป