حتى لو كان تنسيق جدول MyISAM موثوقًا للغاية (جميع التغييرات التي تم إجراؤها على الجدول بواسطة عبارة SQL تتم كتابتها قبل إرجاع العبارة)، فلا يزال بإمكانك الحصول على جدول تالف في حالة حدوث أي من الأحداث التالية:
· تم إيقاف عملية mysqld في منتصف الكتابة.
· يحدث إيقاف تشغيل غير متوقع للكمبيوتر (على سبيل المثال، يتم إيقاف تشغيل الكمبيوتر).
· فشل الأجهزة.
· يمكنك استخدام برامج خارجية (مثل myisamchk) على الجداول التي يتم تعديلها بواسطة الخادم في نفس الوقت.
· عيوب البرمجيات في كود MySQL أو MyISAM.
الأعراض النموذجية للجدول التالف هي:
· عند تحديد بيانات من الجدول، تحصل على الخطأ التالي:
· ملف مفتاح غير صحيح للجدول: '...' حاول إصلاحه
· لا يمكن للاستعلام العثور على الصف في الجدول أو إرجاع بيانات غير كاملة.
يمكنك استخدام عبارة CHECK TABLE للتحقق من صحة جدول MyISAM، واستخدام REPAIR TABLE لإصلاح جدول MyISAM التالف. عندما لا يكون mysqld قيد التشغيل، يمكنك أيضًا استخدام الأمر myisamchk لفحص الجدول أو إصلاحه.
إذا أصبح الجدول الخاص بك معطوبًا بشكل متكرر، فيجب أن تحاول تحديد سبب حدوث ذلك. أهم شيء يجب فهمه هو ما إذا كان الجدول قد أصبح تالفًا نتيجة لتعطل الخادم. يمكنك التحقق من ذلك مبكرًا من خلال البحث في سجل الأخطاء عن رسالة mysqld التي تمت إعادة تشغيلها مؤخرًا. في حالة وجود مثل هذه الرسالة، فمن المحتمل جدًا أن يكون تلف الجدول نتيجة لتوقف الخادم. وإلا فقد يحدث تلف أثناء التشغيل العادي. هذا عيب. يجب أن تحاول إنشاء حالة اختبار قابلة للتكرار توضح هذه المشكلة.