MySQL কোয়েরি অপ্টিমাইজার সার্ভারের একটি গুরুত্বপূর্ণ উপাদান যা কোয়েরির জন্য সেরা এক্সিকিউশন প্ল্যান তৈরি করে। কোনো কোয়েরির জন্য অপ্টিমাইজার সংরক্ষিত কি ডিস্ট্রিবিউশন ও অন্যান্য ফ্যাক্টর ব্যবহার করে জয়েনের অর্ডার এবং কোন ইন্ডেক্স ব্যবহার করা উচিত তা নির্ণয় করে।
তবে কি ডিস্ট্রিবিউশন মাঝপথে 부정확 হয়ে যেতে পারে — বড় পরিমাণ ডেটা পরিবর্তন (ইনসার্ট, ডিলিট, আপডেট) করার পর। যদি কি ডিস্ট্রিবিউশন সঠিক না হয়, অপ্টিমাইজার ভুল এক্সিকিউশন প্ল্যান বেছে নিতে পারে যা সিরিয়াস পারফরম্যান্স সমস্যা সৃষ্টি করে।
ANALYZE TABLE স্টেটমেন্ট এই সমস্যা সমাধান করে। সিনট্যাক্স:
ANALYZE TABLE table_name
উদাহরণ
Student_info টেবিল বিশ্লেষণ:
mysql> ANALYZE TABLE student_info\G *************************** 1. row *************************** Table: query.student_info Op: analyze Msg_type: status Msg_text: OK