วันพฤหัสบดีที่ 7 สิงหาคม พ.ศ. 2551

Debian+ Inno DB Myisam

มุมมอง debian ของฉัน + Inno DB Myisam
เท่าที่รู้คือ ( ไม่แน่ใจถูกหรือเปล่า )
-ISAM (MyISAM) คือ รูปแบบการเก็บ ข้อมูลตามปกติ ( default )ของ MYSQL
- ทำงาน เร็วกว่า InnoDB แต่ ผิดพลาดได้ง่ายกว่า table เสียหายได้ง่าย
-InnoDB ข้อดีคือ
-รองรับการทำ Transaction รองรับการอ่านและเขียน พร้อมๆ กันได้ดี
-มีระบบ Auto Data Recovery หากมีการ shutdown โดยไม่เหมาะสม
คือ
1. ช่วย บอกความแตกต่างให้หน่อยครับ เอาขอดีข้อเสีย
2. Transaction = รองรับการอ่านและเขียน พร้อมๆ กันได้ดี คือ การลองรับการเข้าถึงฐานข้อมูล
ที่มีทั้งการอ่านและเขียน จากหลายคนพร้อมกันหรือไม่ใช่ครับ
3. InnoDB มีอยู่ใน Mysql เปล่าครับ แล้วจะเปิดใช้ได้ยังไรครับ

รื่องของขนาดไฟล์เท่าที่ใช้มา MyISAM ใช้กับไฟล์ขนาดไม่ใหญ่มากนะครับ 3GB - 4GB ก็รอดยากแล้ว และจะอืดมากถ้าไฟล์ขนาดใหญ่ ๆ แต่ InnoDB นั้นตอนนี้ผมใช้เกิน 10GB ยังไม่มีปัญหาเลยครับ แต่ถ้าจะใช้ InnoDB กับระบบใหญ่ ๆ ควรศึกษาการ tunning ให้ดีด้วยนะครับ จะมีผลต่อ performance ของระบบโดยตรง

InnoDB นั้นมีให้ใช้ใน MySQL 5.0 ขึ้นไป (จริงๆแล้วตั้งแต่ 4 กว่าๆด้วยซ้ำ) แต่ บน windows ต้องบอกให้ Active ก่อนใช้งาน โดยทำอย่างนี้

1. แก้ไข c:\windows\my.ini
2. ตอนแรกจะถูก Comment ไว้ ให้ Uncomment บรรทัดที่ว่า
default-storage-engine=INNODB
3. และ มีการ Skip ไม่ให้ใช้ InnoDB เราต้อง Comment ซะ
#skip-innodb
4. จากนั้นให้ Save แล้วก็ Restart MySQL Server

แล้ว InnoDB ดียังไง ใช้ทำอะไร ก็เอาว่า เรื่องนึงคือ การทำ Foreign Key ซึ่งจะทำการ Reference Index แต่ละ Table ก็จะสามารถทำการ Cascade Delete, Update ได้ว่างั้น ถ้าไม่ Enable ก็จะได้เป็น MyISAM เราจะใช้ Foreign Key ไม่ได้ครับ
ขอบคุณล่วงหน้าสำหรับทุกความเห็นและทุกคำตอบครับ

คลังบทความของบล็อก