เนื่องจากการ Optimize ไม่มีสูตรตายตัว เพราะรายละเอียดต่างๆ ไม่เหมือนกันดังนั้นการ Optimize มีหลายแบบเพื่อนำไปใช้ให้เหมาะสมกับงานของเรา มาต่อในส่วนที่พอจะนึกออก
- พยายามใช้ Engine ให้เหมาะสมกับงาน ใน MySQL มี Engine ที่สำคัญที่เป็นที่นิยมอยู่ 2 ตัวคือ MyISAM และ InnoDB ซึ่งทั้ง 2 ตัวก็มีจุดเด่นต่างกัน MyISAM นั้นเหมาะกับงานที่มีการอ่านมากๆ เพราะถูกออกแบบให้สามารถอ่านได้เร็วมากๆ ส่วน InnoDB นั้นก็กลับกันคือเขียนเร็วมาก ดังนั้นอยู่ที่งานของเราว่ามีการใช้งานในส่วนใดมากกว่ากัน ส่วน InnoDB ยังมีความสามารถอื่นๆ เช่น Stored Procedure, Transaction และ Row-Level Lock อ่านเพิ่มได้ที่ ทำความรู้จักกับ INNODB Engine
- สร้าง Index ให้เหมาะสมโดยสร้างในฟิลด์ที่คุณใช้เป็น Clause ใน WHERE Clause, GROUP BY, ORDER BY และ JOIN เพื่อไม่ต้องให้เกิดการอ่านทั้งตารางเพื่อหาข้อมูลตรงตามเงื่อนไข
- ไม่ใช้ AUTO_INCREMENT โดยไม่จำเป็น ในการออกแบบตารางในบางครั้งไม่จำเป็นต้องมี PRIMARY KEY หรือ AUTO_INCREMENT ฟิลด์เสมอไปเช่นการออกแบบตารางเป็น many to many
- ใช้คำสั่ง Built-in ให้มากที่สุด เนื่องจากคำสั่งต่างๆ ถูก compile เป็น core engine ของ DBMS ทำให้ทำงานเร็วกว่าการคำนวนจาก Application ของคุณแน่นอน เช่นการนำข้อมูลจากตารางหนึ่งไปใส่อีกตารางก็สามารถใช้ INSERT ... SELECT แทนได้
- สุดท้ายจะรู้ความสามารถของสินค้านั้นๆ ต้องอ่านคู่มือในเว็บของผู้ผลิต แน่นอน http://dev.mysql.com (เขาไม่ได้ใช้ภาษายากเหมือนในนวนิยาย หรือราชาศัพท์หรอก)