Hướng dẫn xử lý database innodb bị crash

  • Saturday 14/03/2020

Trường hợp database sử dụng innodb bị crash bạn có thể xử lý bằng cách sau:

– Bước 1: Bạn cho start mysql với mode readonly bằng cách:

Mở file: /etc/my.cnf > thêm dòng

innodb_force_recovery = 1

Có thể thay 1 bằng  4 hoặc 6 để start mysql

– Bước 2: Backup toàn bộ database trên server với lệnh:

mysqldump -u root -p –all-databases > alldb.sql

– Bước 3: Cho rename các file trong /var/lib/mysql: ibdata1, ib_logfile0, ib_logfile1

– Bước 4: Mở lại file /etc/my.cnf > bỏ dòng innodb_force_recovery trước đó đã thêm > restart lại mysql ở chế độ bình thường.

– Bước 5: Chạy lệnh bên dưới để đảm bảo mv hết các table sử dụng inodb

cd /var/lib/mysql/

find . -type f -name “*.ibd” -exec mv {} {}.bak \;

– Bước 6: Xong chạy import lại file alldb.sql

mysql -u root -p < /root/alldb.sql