المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : شرح طريقة اصلاح قواعد البيانات بالطريقة الاحترافية



salima
11-02-2013, بتوقيت غرينيتش 01:38 AM
بسم الله الرحمن الرحيم


الكثير تواجه مشاكل في قواعد البيانات وخاصة اصاحب المواقع الكبيرة والتي يكون حجم الداتا بيز فيها 2 جيجا او اكثر هذا شرح طريقة اصلاح قواعد البيانات وكشف الاخطاء واصلاحها بطريقة سهلة وتنطبق على كافة المواقع وخاصة المواقع الكبيرة الي يعانون من تطبيق الاوامر وتعليق تطبيق الامر


اكيد الكثير يعاني من مشكلة اصلاح قواعد البيانات الكبيرة وذلك يصعب على السيرفر SERVER تطبيق الامر او يعلق السيرفر SERVER عند تطبيق الامر , اليوم اقدم لكم افضل حل لمشكلة اصلاح قواعد البيانات


::: نبداء الشرح طريقة :::

اولاً : قم بأنشاء مجلد بأسم mysqltemp داخل مجلد home

رمز PHP:

<code style="white-space:nowrap"> <code> mkdir /home/mysqltemp
</code> </code>

نقوم بوضع تصريح 777 للمجلد :
رمز PHP:

<code style="white-space:nowrap"> <code> chmod 777 /home/mysqltemp
</code> </code>

ثانياً : نقوم بأضافة امر الى ملف اعدادات قواعد البيانات :

قم بفتح ملف الاعدادات الخاص بقواعد البيانات واضف السطر التالي :

رمز PHP:

<code style="white-space:nowrap"> <code> pico /etc/my.cnf
</code> </code>

اضف الامر التالي :
رمز PHP:

<code style="white-space:nowrap"> <code> tmpdir = /home/mysqltemp
</code> </code>

توضيح اكثر ضعه تحت [mysqld]

ليصبح كتالي :
رمز PHP:

<code style="white-space:nowrap"> <code> &#91;mysqld&#93;
tmpdir = /home/mysqltemp
</code> </code>

قم بأغلاق الملف وحفظ العمل .


بعد ذلك قم باعادة تشغيل قواعد البيانات :

رمز PHP:

<code style="white-space:nowrap"> <code> /scripts/restartsrv mysql
</code> </code>

بعد ذلك تكون انحلت مشكلة Can't create new tempfile


نستخدم الامر myisamchk في اصلاح قواعد البيانات الكبيرة :

طبعا نروح لمسار قواعد البيانات , للمعلومية مسار قواعد البيانات داخل السيرفر SERVER هوا
رمز PHP:

<code style="white-space:nowrap"> <code> /var/lib/mysql/
</code> </code>

لما تدخل للمسار هذا راح تجد كل قواعد البيانات التي بالسيرفر SERVER على شكل مجلدات ولما تدخل الى المجلد راح تجد كافة الجداول قواعد البيانات

نقوم بالدخول الى المسار قاعدة البيانات :
رمز PHP:

<code style="white-space:nowrap"> <code> cd /var/lib/mysql/
</code> </code>

ندخل على قاعدة البيانات ونفترض ان اسمها user_dataname

نكتب الامر :
رمز PHP:

<code style="white-space:nowrap"> <code> cd user_dataname
</code> </code>

اولاً يجب علينا معرفة الجداول التي يوجد بها اخطاء لكي يتم اصلاحها :

نقوم بتطبيق الامر التالي :
رمز PHP:

<code style="white-space:nowrap"> <code> myisamchk -c *.MYI >> /home/result.txt



</code> </code>

اضفت الى الامر لكي يتم حفظ تطبيق الامر بداخل مجلد txt لكي نتمكن من مشاهدة النتيجة بصورة مفصلة .
الامر المضاف >> /home/result.txt

الأن نفتح ملف الملف التالي ونشاهد النتيجة الفحص :

رمز PHP:

<code style="white-space:nowrap"> <code> pico /home/result.txt
</code> </code>

انظر للصورة التالية فهذا توصيح بالصورة كيف نعرف الجدول الذي يوجد به اخطاء :
http://upload.dzbatna.net/upfiles/XUZ29531.png
الذي يظهر امام الجدول
رمز PHP:

<code style="white-space:nowrap"> <code> Deleted blocks: 0
</code> </code>

هذا الجدول بدون اخطاء

الذي يظهر بالصورة بالشكل التالي :
رمز PHP:

<code style="white-space:nowrap"> <code> Deleted blocks: 43
</code> </code>

هذا الجدول يوجد به 43 خطاء في الجدول لذلك يجب عليك اصلاحه

طريقة الاصلاح اكتب الاوامر التالية :
رمز PHP:

<code style="white-space:nowrap"> <code> myisamchk -p post.MYI
</code> </code>

يفضل تطبيق الامر بأسماء الجدول الي فيه المشكلة

بعد امر الاسترجاع والاصلاح يفضل الاصلاح الجدول بشكل عام بالامر التالي :

رمز PHP:

<code style="white-space:nowrap"> <code> mysqlcheck user_dataname postindex --repair
</code> </code>

مع تغير اسم الداتا بيز + تغير اسم الجدول بدل البوست ضع اسم الجدول الي تريد تعمل اصلاح له

اتمنى لكم الفائدة من هذا الموضوع واعذروني عن اية اخطاء اذا وجدت

وفي النهاية اتمنى القى دعوه من الآخوان ان الله يوفقني

سـيـرفر مـصـر لخـدمات الـويـب الـمتكاملة (http://www.serveregypt.com)





https://fbcdn-sphotos-d-a.akamaihd.net/hphotos-ak-ash4/482113_236967293114455_1193518507_n.png (http://www.dzbatna.com)
©المشاركات المنشورة تعبر عن وجهة نظر صاحبها فقط، ولا تُعبّر بأي شكل من الأشكال عن وجهة نظر إدارة المنتدى (http://www.dzbatna.com)©

استعمل مربع البحث في الاسفل لمزيد من المواضيع


سريع للبحث عن مواضيع في المنتدى