Skip to content

Recover crashed Aria storage engine

MariaDB: Aria recovery after crash

If your server crashed and MariaDB logs an error similar to [ERROR] mysqld: Aria recovery failed. Please run aria_chk -r on all Aria tables (*.MAI) and delete all aria_log.######## files you may want to try the following to recover the database to a healthy state:

Start the stack and wait until mysql-mailcow begins to report a restart. Check this with the following command:

docker compose ps
docker-compose ps

Now exec the following commands:

Stop the stack, don't run "down"

docker compose stop
docker-compose stop

Run a bash in the stopped container as user mysql

docker compose run --rm --entrypoint '/bin/sh -c "gosu mysql bash"' mysql-mailcow
docker-compose run --rm --entrypoint '/bin/sh -c "gosu mysql bash"' mysql-mailcow

cd to the SQL data directory

cd /var/lib/mysql

Run aria_chk

aria_chk --check --force */*.MAI

Delete aria log files

rm aria_log.*

Execute a complete stack restart using the following commands:

docker compose down
docker compose up -d
docker-compose down
docker-compose up -d