شرح صفوف ومحتوى الفقرة
يعتمد الأمر التقليدي EXPLAIN على الإحصائيات التقريبية المخزنة، وقد يقدّر أن الاستعلام سيفحص 10 صفوف بينما يفحص في الواقع 5,000 صف! لمعالجة هذه الفجوة، يوفر MySQL 8 أداة القياس الحقيقي EXPLAIN ANALYZE.
كيف يختلف EXPLAIN ANALYZE عن EXPLAIN العادي؟
- ينفذ الاستعلام فعلياً: يشغّل المحرك الاستعلام بالكامل ويقيس الزمن الحقيقي المستغرق في كل خطوة ثم يتجاهل عرض جدول النتائج ليعرض شجرة القياس.
- يقارن التقدير بالواقع: يعرض لك في كل عقدة كلاً من التقدير
(cost=... rows=...)والقياس الحقيقي(actual time=start..end rows=... loops=...). - تُقرأ شجرة
EXPLAIN ANALYZEمن الداخل (الخطوات المسننة الأعمق) إلى الخارج (الخطوة النهائية في الأعلى).
SQL
EXPLAIN ANALYZE SELECT c.full_name, o.order_id FROM customers c INNER JOIN orders o ...;