MySQL 8 - Database page corruption on disk or a failed file read of page - You may have to recover from a backup

Материал из Wiki - Iphoster - the best ever hosting and support. 2005 - 2024
Перейти к:навигация, поиск

MySQL 8 - Database page corruption on disk or a failed file read of page - You may have to recover from a backup

В логах mysql 8:

 Database page corruption on disk or a failed file read of page [page id: space=0, page number=5]. You may have to recover from a backup


Если крешанулись все базы INNODB - делаем восстановление по алгоритму.
В примере Ubuntu 20.04 + MySQL 8.0.32

1) Добавить в /etc/mysql/mysql.conf.d/mysqld.cnf
# vi /etc/mysql/mysql.conf.d/mysqld.cnf
innodb_force_recovery = 6
и запустить mysql
# systemctl start mysql
2) Сделать бекапы баз через mysqldump
3) Остановить mysql 
# systemctl stop mysql
Создать новую /var/lib/mysql папку с правами: 
# rm -rf /var/lib/mysql/
# mkdir /var/lib/mysql
# chown mysql:mysql /var/lib/mysql
Создать системные базы скриптом инициализации:
# mysqld --initialize --user=mysql --datadir=/var/lib/mysql
4) Удаляем строку innodb_force_recovery из my.cnf и перезапускаем mysql
# systemctl restart mysql
5) Восстанавливаем базы из бекапов.