61569: Acronis Cyber Backup for Plesk: download or recovery of databases fails with "Unable to start new instances of MySQL"

use Google Translate

Last update: Fri, 2020-05-22 13:16

Symptoms

Download or recovery of databases fails. The following error message is shown in the operation log (if you click the failed task, and then View Details):

Unable to start new instance of MySQL.

Cause

To recover databases, the extension starts a second MySQL instance. Sometimes the start may fail. Some of the possible reasons are:

  • MySQL start fails by timeout due to the large amount or size of databases
  • MySQL fails to start with innodb_force_recovery = 1 option due to incompatibility of MySQL configuration and starting mode

Solution

The issue has been fixed in product code; use_all_dbs is selected as default starting mode.

More information

For older versions, you can use this solution.

In some cases, the issue may be solved by changing startup settings for the secondary MySQL instance:

  1. Connect to the Plesk server via ssh.
  2. Open the extension configuration file /usr/local/psa/var/modules/acronis-backup/srv/config.ini.
  3. Find [mysql] section. There are the following options:
    • starting_mode
      MySQL starting mode. Could have these values:

      • use_all_dbs
        Default for Ubuntu. Path to the databases of the mounted archive is submitted as datadir to MySQL at startup. This is a reliable method to start MySQL, which may, however, take some time.
      • use_required_dbs
        Default for other operating systems. A temporary directory containing only the databases subject to restore is created at MySQL startup. Symbolic links to these databases in the mounted backup are created. This option accelerates MySQL start in case Plesk contains a significant amount of databases. Can cause issues at instance startup.
    • innodb_force_recovery_level
      Recovery level of innodb tables at MySQL startup (see more details in this MySQL article). Could have a value of 0 to 6 (inclusive). Default value for use_all_dbs mode is 0, for use_required_dbs is 1. If MySQL fails to start, examine MySQL logs and try gradually increasing this value.
    • starting_timeout
      Waiting time (in seconds) of Acronis service for MySQL service start. Increase this value, if MySQL fails with a timeout.
    • socket_ready timeout
      Waiting time (in seconds) of Acronis service for MySQL to accept incoming connections. Do not change.

3. Restart acronis-backup-srv service to apply new settings:
plesk bin extension --exec acronis-backup srv.php restart

MySQL logs are located in /usr/local/psa/var/modules/acronis-backup/srv/log/async_tasks/<id>/mysql.log, where <id> is the id of the operation.

If you notice while checking logs that MySQL takes a significant time to start (which causes a timeout), try to increase starting_timeout or switch to the use_required_dbs mode.

If the logs contain a lot of errors and then state the startup is impossible, switch to the use_all_dbs mode or gradually increase innodb_force_recovery_level.