При создании бекапа панель возвращает ошибку
Warning: Database «mysql_databasename»
Unable to make database dump. Error: Failed to exec mariadb-dump: Exit code: 5:
Короткое расследование показало что Exit code: 5 — это «ferror for output file was got», проще говоря, возникла ошибка записи итогового дампа на диск.
Вот, кстати, на всякий случай список кодов ошибок mysqldump и mariadb-dump (источник — исходный код mysqldump)
#define EX_USAGE 1
#define EX_MYSQLERR 2
#define EX_CONSCHECK 3
#define EX_EOM 4
#define EX_EOF 5 /* ferror for output file was got */
#define EX_ILLEGAL_TABLE 6
Но вернемся к ошибке.
99.9% причина в том что при записи в файл не хватает места и процесс дампа «падает» в соответствующую ошибку.
Потому нужно смотреть чтобы места хватало с запасом на ВСЕ дампы баз.
В случае с панелью Plesk следует еще помнить, что эта панель при создании резервных копий mysql руководствуется значениями двух собственных переменных. А именно, DUMP_D и DUMP_TMP_D имеющими по-умолчанию вот такие значения:
# Backups directory
DUMP_D /var/lib/psa/dumps
# Backups temporary directory. DUMP_TMP_D should not be inside of (or equal to) DUMP_D.
DUMP_TMP_D /tmp
И если у вас в DUMP_TMP_D не хватило места — вместо дампа базы данных получаем ошибку!
Решений два:
1) Расширить размер раздела /tmp до нужного объема.
2) создать где-то на сервере, где много места папку tmp, открыть файл /etc/psa/psa.conf любым текстовым редактором и
DUMP_TMP_D /tmp
заменить на
DUMP_TMP_D /путь/к/новой/папке/tmp
сохранить изменения.
Обязательно перезапустить sw-cp-server!
systemctl restart sw-cp-server
Запустить тестовый бекап.
Прокомментировать