เรียน อาจารย์ ชัยพร กระผม นายแพทย์ ธงชัย เสรีรัตน์ หัวหน้าศูนย์คอมพิวเตอร์ โรงพยาบาลร้อยเอ็ด อยากเรียนถามปัญหาหลายๆข้อ กับอาจารย์ และ ผู้รู้ทุกๆท่านครับ
1.จะดูสถานะการทำงานของ buffer ของ InnoDB ได้อย่างไร ว่า Table ใดใช้ Memory เท่าไหร่
2.ใน Buffer ของแต่ละ Table จะได้ไหมครับว่า hit rate กี่ %
3.หลักในการกำหนดค่า innodb_buffer_pool_size มีหลักการอย่างไรบ้าง จะต้องแปรผันตามระบบ ที่มีTable ทั้ง Innodb และ Myisam
4.ใน Innodb สามารถกำหนด buffer เฉพาะ ตารางบางตารางที่เราต้องการได้หรือไม่
5.ในการพิจารณาการเปลี่ยนชนิดของ ตาราง จาก MyISAM เป็น Innodb มีหลักเกณฑ์การเปลี่ยนอย่างไร เช่น ขนาดของข้อมูล ความสำคัญที่มีการใช้บ่อยๆ
6.ถ้ามี Ram จำกัด ที่ 8 GB แล้วในฐานข้อมูลมีตารางประเภท MyISAM และ Innodb อย่างละ 50 % ควรที่จะมีการจัดสรร Ram อย่างไร หรือต้องดูขนาดของฐานข้อมูล จำนวนตารางทั้งหมดที่มีอยู่ในฐานข้อมูล ตารางที่มีการใช้บ่อยถือเป็นปัจจัยหลักหรือไม่
7.หลังจากใช้คำสั่ง TOP ดูใน Linux แล้วพบบว่าในช่วง ที่มีการ Locked ของตาราง นั้น Swap ถูกใช้น้อยมาก ทั้งๆที่ Ram ถูกใช้หมดแล้ว จึงอยากทราบว่า มีค่า config ตัวใดที่ทำการ lock ไม่ให้ใช้ Swap ได้เต็มที่ ซึ่งถ้าหาก ใช้ swap เป็น Harddisk แบบ SSD 32 GB ควรจะ setค่า เท่าไหร่
8.เราสามารถลดข้อมูล innodb_log_file_sizeได้หรือไม่ ของเดิม 200 MB
9.MyISAM เราสามารถ กำหนดได้ไหมครับว่า ให้ตารางใดใช้ buffer เท่าใด
10.การสร้าง index เพิ่มใน ตาราง ชนิด innodb จะสามารถเพิ่มความเร็ว ในการ คิวรี ได้หรือไม่
11.เราสามารถกำหนด scale ของ work load ได้หรือไม่ครับ แล้วหลักการคิด work load นี่คิดยังไงครับ
12.ตอนนี้ระบบยังถูกเซ็ตให้ตั้งค่า ที่ 2 วินาที ค่อยเขียนข้อมูลลง Harddisk อยู่ไหมครับและการทำแบบนี้จะช่วยให้ระบบทำงานเร็วขึ้นไหมครับ
13.และอยากทราบปริมาณ การ เขียนละอ่านข้อมูล ของ เครื่อง server ในแต่ละช่วงเวลา จะได้ไหมครับ และมีวิธีการอย่างไร รวมทั้ง แยก เป็นการเขียนลง logfile tempfile
14.ในตอนที่มีการคิวรี่ข้อมูลในสถานะจะแจ้งว่า กำลังก็อบลง tmptable นี่ เราสามารถย้ายที่เก็บ tmptable ได้ไหมครับ
15.อยากทราบวิธีการเช็คว่า ตาราง แต่ละตาราง ใช้ CPU RAM เท่าไหร่ และเราสามารถที่จะเซ็ต ให้เก็บ ตาราง replicate_log,report_access_log,ksklog ไว้ที่ server ตัวอื่นได้หรือไม่
16.เราจะ replicate ข้อมูล โดยยกเว้นตารางเก็บ log ได้หรือไม่
17.buffer ของ Harddisk มีประมาณ 16 MB เราจะมีวิธีการอย่างไรให้สามารถนำเอา resource ส่วนอื่นๆมาเพิ่ม buffer ในส่วนนี้ได้หรือไม่
ขอบคุณมากครับ สำหรับคำตอบ ซึ่งคำถามข้างบนนี้เป็นคำถามที่สงสัยมานานครับ และคิดว่าน่าจะเกิดประโยชน์ต่อหลายๆท่านด้วยครับ