O comando mysqldump
não retorna nada, que é canalizado através de gzip
e termina em um arquivo gzip vazio. Veja:
$ echo -n "" | gzip -9 > test.gz
$ stat -c %s test.gz
20
Isso resulta em um arquivo com tamanho 20 bytes. Portanto, o problema é o comando mysqldump
. Como o crontab do root é executado, o script é executado com privilégios de raiz. sudo
não é necessário. Use-o sem sudo
. Apenas:
/opt/rh/mysql55/root/usr/bin/mysqldump --defaults-extra-file=$configFile $db_name | gzip -9 > $backup_path/$db_name-$date.sql.gz