clickhouse-backup配置及使用(Linux)

一、下载地址

Releases · Altinity/clickhouse-backup · GitHub

二、上传到服务器解压安装

自行上传至服务器,解压命令:

tar xvf clickhouse-backup-linux-amd64.tar.gz

三、创建软连接

sudo ln -sv build/linux/amd64/clickhouse-backup /usr/local/bin/

sudo ln -sv build/linux/amd64/clickhouse-backup /usr/bin/

四、验证

clickhouse-backup -v

五、创建配置文件

查看clickhouse的数据存储路径

sudo vi /etc/clickhouse-server/config.xml

找到path标签,记录这个地址"/icc/tools/clickhouse/data"

创建clickhouse-backup的配置文件

sudo mkdir -p /etc/clickhouse-backup

sudo vi /etc/clickhouse-backup/config.xml

复制代码
general:
  remote_storage: none
  backups_to_keep_local: 7 # 本地备份保留个数,默认0表示不自动做备份清理
  backups_to_keep_remote: 31 # 远程备份保留个数
clickhouse:
  username: default
  password: ""
  host: localhost
  port: 9000 # 这个与jdbc链接里的端口没关系,就是9000
  data_path: "/icc/tools/clickhouse/data" #clickhouse的数据的实际存储位置

注:

1、password配置项,我之前是设置了default的密码的,然后就在这里使用了那个密码,但是一直报错,所以就把default账号的密码文件删掉了

2、data_path配置项,这里就是clickhouse的数据存储路径

六、常用命令

sudo clickhouse-backup tables //查看可备份的表有哪些

sudo clickhouse-backup list //查看备份清单

sudo clickhouse-backup create -t 表名 备份名 //备份指定表

sudo clickhouse-backup create 备份名 //备份全库

sudo clickhouse-backup delete local 备份名 //删除本地备份

sudo clickhouse-backup restore 备份名 //还原本地备份

还原备份有可选参数:-table 只还原指定表 例:-table=数据库名.*(还原指定库)

还原时如果遇到类似问题:code: 57, message: Directory for table data store/e8c/e8c3a343-758d-4e9a-a8c3-a343758dce9a/ already exists after 1 times,需要找到备份文件夹中的/metadata/数据库名/表名.json文件,然后把UUID删掉(下图选中部分),再重新执行即可

七、配置定时备份脚本

编写脚本

vi ck_backup.sh

复制代码
#!/bin/bash
clickhouse-backup create all_`date +%Y%m%d`
clickhouse-backup delete local all_`date -d "2 day ago" "+%Y%m%d"`

编辑定时任务

crontab -e

复制代码
0 1 * * * sudo sh /icc/tools/crontab/ck_backup.sh &>>/icc/logs/ck_backup.log

如果sudo不成功的,可以添加如下配置

sudo vi /etc/sudoers

在末尾加上这一行

user01 ALL=(ALL) NOPASSWD:ALL

把user01替换成你的用户名即可

相关推荐
Edingbrugh.南空15 小时前
Flink ClickHouse 连接器维表源码深度解析
java·clickhouse·flink
unhurried人生——冕临3 天前
Ubuntu安装ClickHouse
clickhouse
爱吃萝卜的猪14 天前
Clickhouse源码分析-Replicated Database创建流程
clickhouse
编程的大耳朵14 天前
ClickHouse 概述
clickhouse
Ethan301414 天前
Clickhouse官方文档学习笔记
笔记·学习·clickhouse
weixin_3077791315 天前
Python实现MySQL建表语句转换成Clickhouse SQL
数据库·python·sql·mysql·clickhouse
大千AI助手25 天前
硬核实战 | 3分钟Docker部署ClickHouse列存数据库
大数据·clickhouse·docker·database
Sayai1 个月前
dbeaver 查询clickhouse,数据库时间差了8小时
数据库·clickhouse·oracle
weixin_307779131 个月前
Clickhouse统计指定表中各字段的空值、空字符串或零值比例
运维·数据仓库·clickhouse
weixin_307779131 个月前
Linux下GCC和C++实现统计Clickhouse数据仓库指定表中各字段的空值、空字符串或零值比例
linux·运维·c++·数据仓库·clickhouse