حل مشكلة: The storage engine for the table doesn’t support repair
يواجه أصحاب المواقع مشكلة كبيرة مع قواعد البيانات MYSQL وهذه المشاكل قد تتطور الى ازمات معقدة تهدد بدمار مواقعهم ونسفها عن السيرفر.
خطأ برمجي أو بشري، عطل في السيرفر، مشاكل في الترقية كل هذه الأسباب قد تؤدي الى أعطاب في بعض الجداول بقاعدة بيانات موقعك سواء كان مدونة ووردبرس او منتدى VB أو سواهما من مجلات إدارة المحتوى.
يكون الحل المنطقي في هذه الحالات هو أحد التالي:
- عمل استرجاع للنسخة السابقة لوجود المشكلة وهذا الحل يتطلب أن يكون لديك نسخة احتياطية محفوظة.
- عمل اصلاح Repair لجداول قاعدة البيانات المعطوبة سواء عن طريق السي بانل أو الشل أو عبر بوابة phpmyadmin
غالباً يفتقد أصحاب المواقع وخصوصاً الضخمة الى نسخ احتياطية لأنها تأخذ مساحة ضخمة على السيرفر وهو ما يكون صاحب الموقع بغنى عنه لتوفير تكاليف الاستضافة الباهظة.
لذلك يكون الحل المعتاد هو الثاني .
لكن حتى هذا الحل تواجهه بعض المعوقات خصوصاً إذا ما كان حجم جدول قاعدة البيانات كبير جداً.
ستجد أنه لا يقبل الاصلاح.. ويظهر أمامك الخطأ التالي:
The storage engine for the table doesn’t support repair
الآن ستقف حائراً كما حصل معي بالضبط وتتساءل ما العمل ؟
في الواقع هناك عدة حلول أنصحك بها:
- الاتصال في الحال بالدعم الفني الخاص باستضافتك، اذا كانت متعاونة ستقوم بحل المشكلة لك من طرفها دون تدخل منك.
- القيام بتبديل صيغة الجدول من MyISAM إلى INNODB وذلك باتباع الطريقة التالية:
تشغيل الأمر التالي في قاعدة البيانات المقصودة
ALTER
TABLE
products ENGINE = innodb
لكن لا ينصح تشغيل هذا الأمر لقواعد البيانات الضخمة خصوصاً على السيرفرات الضعيفة.
في تلك الحالة ينصح بالطريقة البديلة التالية لتنفيذ الهدف نفسه:
أدخل إلى phpMyAdmin ثم اختر قاعدة البيانات المطلوب اصلاحها.
بعدها اختر الجدول الذي يشير الذي يشير الى استحالة اصلاحه والذي سبق وأن ظهر أمامه سطر المشكلة
The storage engine for the table doesn’t support repair
بعدها اذهب الى تبويب Operations كما يظهر في الصورة أدناه
ستفتح امامك صفحة جديدة فتش على خيارات الجدول فيها ومن خيار Storage Engine قم باختيار INNODB ثم اضغط على زر Go
انتبه: هذه عمليات تؤدي الى زيادة التحميل على السيرفر وترفع اللود. لذلك يفضل ان تلجأ اليها في غير أوقات الذورة، وأن تقوم قبل كل شيء بأخذ نسخة احتياطية من قاعدة البيانات والاحتفاظ بها على سبيل الاحتياط.
أخوكم: محمد عيد / عربي تك
أكتب تعليقك ورأيك