Восстановление поврежденного движка Aria
MariaDB: Восстановление Aria после сбоя¶
Если ваш сервер аварийно завершил работу и MariaDB регистрирует ошибку, подобную [ERROR] mysqld: Aria recovery failed. Please run aria_chk -r on all Aria tables (*.MAI) and delete all aria_log.######## files, вы можете попробовать следующие действия для восстановления базы данных до исправного состояния:
Запустите стек и подождите, пока mysql-animails начнет сообщать о перезапуске. Проверьте это с помощью следующей команды:
docker compose ps
docker-compose ps
Теперь выполните следующие команды:
Остановите стек, не используйте команду "down"
docker compose stop
docker-compose stop
Запустите bash в остановленном контейнере от имени пользователя mysql
docker compose run --rm --entrypoint '/bin/sh -c "gosu mysql bash"' mysql-animails
docker-compose run --rm --entrypoint '/bin/sh -c "gosu mysql bash"' mysql-animails
Перейдите в директорию данных SQL
cd /var/lib/mysql
Запустите aria_chk
aria_chk --check --force */*.MAI
Удалите лог-файлы aria
rm aria_log.*
Выполните полный перезапуск стека с помощью следующих команд:
docker compose down
docker compose up -d
docker-compose down
docker-compose up -d