حل مؤقت لمشكلة إمتلاء مجلدات tmp بالسيرفر
2015/11/29
تطوير الويب, دروس السيرفرات
من المشاكل التي تؤرق مدراء السيرفرات في إمتلاء المجلدات المؤقتة للسيرفر “tmp” ولها عدة أسباب:
- حجم مخرجات قواعد البيانات أكبر من حجم المجلد المؤقت
- خطأ في قاعدة بيانات يولد الكثير من الإستعلامات
- عند عمل إصلاح أو تحسين لقاعدة بيانات كبيرة الحجم
في كل الأحوال الحل الأمثل هو بإعادة بناء السيرفر ورفع حجم المجلدات المؤقتة للسيرفر, ولكن هذا الخيار قد لا يكون مطروح لعدة أسباب, منها عدم أكتمال النسخ الاحتياطي بسبب نفس المشكلة, أو قد لا تجد الوقت المناسب لذلك.
هنا حل مؤقت, أتبع الشرح التالي بالترتيب:
إنشاء مجلد جديد للملفات المؤقتة (تستطيع وضعه في أي مسار تريد وأي اسم):
mkdir /home/mysqltmp
تغيير التصريح:
chmod 1777 /home/mysqltmp
فتح ملف my.cnf:
nano /etc/my.cnf
ضع الكود التالي تحت قسم [mysqld]:
tmpdir=/home/mysqltmp
إعادة تشغيل قواعد البيانات:
/etc/init.d/mysql restart
فحص المسار الجديد لملفات القواعد المؤقتة:
mysqladmin var | grep tmpdir
يجب أن تظهر النتائج كالتالي:
| slave_load_tmpdir | /home/mysqltmp | tmpdir | /home/mysqltmp