มีงานอยู่งานหนึ่ง ผมติดตั้ง Mysql Server V5 ลงบนบอรืด Rpi เพื่อที่จะได้เก็บ Record บางอย่าง โดยรอรับค่าจาก python โดยเจ้าสคริปต์ python ผมทำงานแบบ Event driven ถ้ามีเหตุการณ์เกิดขึ้น จะทำการบันทึก ค้นหา ลงฐานข้อมูล Mysql ทีนี้ เจ้าสคริปต์ตัวนี้ จะทำการสร้าง connection ขึ้นมา แต่ในกรณีที่ไม่เกิด Event ใดๆ เลยเป็นเวลา 8 ชั่วโมง เจ้า Mysql Server จะทำการตัด Connect นั้นทิ้งไป แม้ว่า เราจะยัง connect อยู่ก็ตาม (ไม่เกิดการ Query , Insert , Update ใดๆ) หลังจาก 8 ชั่วโมงผ่านไปแล้ว ถ้าจู่ๆ มี Event เกิดขึ้นที่ python สคริปตฺ์นี้ มันจะทำการอัพเดทข้อมูลลงฐานข้อมูล แต่เนื่องจากว่า Mysql Server ได้ตัดการเชื่อมต่อทิ้งไปแล้ว ก็จะเกิด Exception ที่ชื่อว่า Error 2006 Mysql Server has gone away นั่นเอง
ทางแก้ไข คือ ให้เข้าไปแก้ไขค่า my.cnf ที่อยู่ใน /etc/mysql/my.cnf โดยเพิ่มหัวข้อ
wait_timeout = 31536000
อ้างอิงจาก http://dev.mysql.com/doc/refman/5.0/en/gone-away.html
ลองไปแก้ดูนะครับ หากเจอเหตุการณ์เหมือนผม
1 ความคิดเห็น:
ปึกสา น่อยครับ ผม ลง OS ทุกอัน แล้ว แต่ มันไม่ บูต มันติด ไฟ เขียว บาง แดงบาง ผมไม่รูจะทำไง แล้ว ลองเปลีย sdการ 4 ทำมาดา เป็น 8 GB 48MB/s 320x SanDisk แต่ก็ไม่ติด ช่วยน่อย facebook ผม ซื่อ วิมลรัตน์ แซ่อุ่ย หรือ https://www.facebook.com/muisc.love.16
Post a Comment