สอบถาม อ. manoi และ ทุกท่านครับ
เกี่ยวกับ replicate_log (อีกแล้ว)
ปกติแล้วถ้าระบบมีการใช้งานไปนานหลายวัน ที่ รพ. ประมาณ 5 วันอย่างมากก็จะขึ้นเตือนว่า replicate_log มีขนาดใหญ่มากแล้ว ให้เข้าลบแล้วทำ optimize (ประมาณนี้)
แต่ผ่านมาหลายวันมาก น่าจะเกิน 10 วันหลังจากที่มีการเตือน ...
พอมาวันนี้ (20 ม.ค. 53)
หลังจาก login มันไม่เตือน ครับ
น้อง ๆ admin ก็ไม่มีใครไปลบ
ผมก็เข้าไปดู replication log manager
ตัวเลขมันติดลบ (ตามรูป)
ผมสอบถาม อ. ดังนี้
1. ตามรูป... ตัวเลขติดลบ เกิดจากอะไรครับ จะมีปัญหาหรือไม่ครับ
2. เนื่องจากที่ รพ. ใช้ slave 2 ตัว ในการ replication
โดย slave 1 จะ run แบบ real time
ส่วน slave 2 จะรันเป็นช่วง ๆ
เมื่อมีการเตือนตามกระทู้ ก็จะทำให้ slave ทั้ง 2 ตัว sync ข้อมูลกับ master ก่อน (ซึ่งต้องรอการ sync ของ slave 2 ให้เสร็จก่อน) แล้วจึงเข้าไปลบข้อมูลในตาราง replicate_log
ที่เมนู tools > miscellaneous > check DB > clear replication log
โดยขั้นตอนทั้งหมดยัง run ระบบ replication โดยมี slave ทั้ง 2 ตัว
(คำถามของข้อ 2)
ระหว่างที่ปุ่ม clear replication log ที่เมนูดังกล่าว ทำงาน
ถ้ามี transaction เกิดขึ้น หรือมีการใช้งานในระบบ ข้อมูลใน slave ทั้ง 2 จะ sync ข้อมูลจาก master ทันหรือไม่
ซึ่งผมเองเข้าใจ (ทุกครั้งเลยก็ว่าได้) ว่าต้องรอให้ระบบไม่มี transaction เกิดขึ้น จึงจะเข้าไป clear replicate log
ผมเข้าใจถูกต้องหรือไม่ครับ (ถ้าเข้าใจผิด ผมจะได้ไม่ต้องตื่นขึ้นมาทำขั้นตอนนี้ตอนตี 2 ตี 3 ซะที)
(อันนี้เป็นคำขอ ..ของข้อ 2)
อยากให้ อ. ทำปุ่ม clear replication log ไว้ที่หน้า replication log manager
เพราะว่าหลังจากที่เรา backup ตาราง replicate_log จะได้ลบได้เลย
3. เนื่องจากข้อ 2 ถ้ามีการ sync ข้อมูลแค่
ระหว่าง master กับ slave 1 เท่านั้นก่อน แล้วทำ clear replicate log เลย
แล้วต่อมาผมจะ sync ข้อมูลทั้ง 3 ตัวเลย ข้อมูลของ slave 2 จะเท่ากับ master และ slave 1 มั๊ยครับ
ซึ่งที่ผมเข้าใจก็คือ ไม่น่าจะเท่ากัน เพราะข้อมูลใน replicate_log ได้ถูก clear ไปแล้ว ผมเข้าใจถูกหรือไม่ ?
จบคำถามและคำขอ
ขอบคุณทุกท่านที่อ่านจนจบ ... /\