我尝试从上次备份进行差异备份,如下所示:
mysqldump --no-create-info --replace --skip-comments --skip-triggers --hex-blob
testdb mytable --where="last_backup > '$last_backup'" | gzip -c > backup_file.gz
一切正常,但如果上次备份mysqldump没有任何变化,则获得一个空文件(只有特定于mysql的页眉和页脚行)
如果没有变化,有没有办法避免创建backup_file.gz?
有点像:
IF ((SELECT COUNT(*) FROM my_table WHERE last_backup > '$last_backup') > 0) THEN
mysqldump --no-create-info --replace --skip-comments --skip-triggers --hex-blob
testdb mytable --where="last_backup > '$last_backup'" | gzip -c > backup_file.gz
答案 0 :(得分:0)
最后我解决了这个问题:
{{1}}
mysqldump命令必须在一行中。我已经分裂为更具可读性 但If条件可以是多行