Recover a MariaDB database

Before running the commands shown on this page, you should load the Bitnami stack environment by executing the installdir/use_APPNAME script (Linux and MacOS) or by clicking the shortcut in the Start Menu under “Start -> Bitnami APPNAME Stack -> Application console” (Windows). On OS X VMs, the installation directory is /opt/bitnami and OS X VM users can click the “Open Terminal” button to run commands. Learn more about the Bitnami stack environment and about OS X VMs.

Before trying to recover a MariaDB database, you should check the exact error in the MariaDB log file at installdir/mariadb/data/mysqld.log. Check the latest entries in the MariaDB log file with the following command:

$ sudo tail -n 100 installdir/mariadb/data/mysqld.log

In this case, assume the following error in the log file:

110108 10:37:45 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'user' is marked as crashed

Here are some steps to resolve this error:

  • The MariaDB database is configured to use InnoDB engine by default. You can add the innodb_force_recovery=1 option in the main MariaDB configuration file at installdir/mariadb/my.cnf to try and fix the database:

    innodb_force_recovery = 1
  • Start the MariaDB database with the following command:

    $ mysqld --skip-grant-tables --user=mysql --pid-file=installdir/mariadb/data/
    --skip-external-locking --port=3306 --sock=installdir/mariadb/tmp/mysql.sock
  • Open a new console and try to log in the database:

    $ mysql -u root -p
  • In this case, the error was related to the mysql.user table. Run these commands:

    MariaDB> use mysql;
    MariaDB> repair table user;
    MariaDB> check table user;
    MariaDB> exit;

If the table is recovered, you should see “OK” in the mysql.user status table. Do not forget to remove the innodb_force_recovery option from the my.cnf file and restart the MariaDB server again.

$ sudo installdir/ restart mariadb

If you find a different error or cannot fix an issue, we can try to help at

Last modification September 5, 2018