ران نشدن سرویس mysql به دلیل کرش innodb

درصورتیکه سرویس Mysql ران نمیشد و با خطای این مواجه شدید

ابتدا /var/lib/mysql رفته و فایل .err را مشاهده کنید ( به خطوط آخر رفته ) و ببینید دلیل ران نشدن کرش شدن innodb هست یا خیر ؟

اگر بود ابتدا دستور زیر را وارد کنید :

ls -l ib_logfile0 ib_logfile1

سپس همچین نتیجه ای به قرار زیر به شما می دهد :

-rw-rw—- 1 mysql mysql 50331648 Sep 13 01:34 ib_logfile1

در حال حاضر حجم فایل ib_ligfile0 ما ۵۰۳۳۱۶۴۸ می باشد ، برای شما هر مقدار که بود از این به بعد به جای این عدد در مراحل بعدی عدد مربوط به سرور خود را وارد کنید

nano /etc/my.cnf

وارد که شدید پس از تگ mysqld خطوط زیر را وارد کنید

innodb_log_file_size=50331648
innodb_force_recovery=6

حال سرویس mysql را ریستارت کنید سرویس Mysql شما ران می شود

دقت نمایید که در این حالت تیبل های InnoDB فقط read only هستند و قابل تغییر و تعمیر نمی باشند ، برای حل مشکل پس از ران شدن باید از دیتابیس ها بک آپ بگیرید و تبدیل به myisam کنید ( آموزش در سایت موجود هست ) و سپس مجدد دیتابیس را جایگذاری کنید

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *