Может следить чтобы задачи в STDERR выдавали только реальный ошибки а не всякую «полезную информацию» а так же возвращали не нулевой статус только если ошибка…
Дьявол, как обычно, в мелочах. Считать, я думаю, нужно с 3т.р.-5т.р. но мало ли чем окажется 'какая-то своя клиент-серверная прога', может и простым копированием обойтись, а может и копаться с переносом на разные платформы (x86 <-> x64 у каждой бд могут быть нюансы).
rsync может копировать, а при обрыве сам проверять что уже скопировано и не копировать заново (опции inplace/partial).
Так же rsync может это делать с компрессией на лету и через ssh (опции -z и -e).
Он может сохранить права, время и прочие атрибуты. Будет копия один в один (опция -a).
Можно даже ограничить скорость копирования если надо весь канал не забивать (опция bwlimit).
Проще и надежнее уже не придумаешь.
Так и хочется написать, мол «rm -rf /» все вернут на место. кхм, простите :)
на счет БД: у вас же скорее всего в /var/lib/mysql лежат базы, да? сделайте так, что бы mysql был ее владельцем.
По логам очевидно, что сервер не стартует из-за отсутствия баз. Базы создаются скриптом из папки scripts, а не mysql_upgrade. Проще всего было бы переустановить пакет с полным удалением и позволить установщику самому сделать работу.