diff options
Diffstat (limited to 'tools/clickhouse-backup.sh')
-rw-r--r-- | tools/clickhouse-backup.sh | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/tools/clickhouse-backup.sh b/tools/clickhouse-backup.sh new file mode 100644 index 0000000..6e938e4 --- /dev/null +++ b/tools/clickhouse-backup.sh @@ -0,0 +1,31 @@ +#!/bin/bash + +DIR=/var/lib/clickhouse/backup +MAX_COUNT=3 +NAME=backup_$(date -u +%Y-%m-%d) + +create() { + local name="$1" + clickhouse-backup create "$name" +} + +del() { + local name="$1" + clickhouse-backup delete local "$name" +} + +# create a backup +create "$NAME" + +# compress backup +cd "$DIR" +tar czvf $NAME.tar.gz $NAME + +# delete uncompressed files +del "$NAME" + +# delete old backups +for file in $(ls -t "${DIR}" | tail -n +$(( MAX_COUNT+1 ))); do + echo "removing $file..." + rm "$file" +done
\ No newline at end of file |