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替换成你的用户名即可

相关推荐
Fireworkitte3 小时前
ClickHouse详解
clickhouse
知其_所以然1 天前
使用docker安装clickhouse集群
clickhouse·docker·容器
wuli玉shell2 天前
Doris和Clickhouse对比
clickhouse·doris
SelectDB技术团队5 天前
可观测性方案怎么选?SelectDB vs Elasticsearch vs ClickHouse
大数据·数据仓库·clickhouse·elasticsearch·信息可视化·doris·半结构化
goTsHgo5 天前
ClickHouse多表join的性能优化:原理与源码详解
clickhouse·性能优化
妖果yaoyao7 天前
docker 部署clickhouse
clickhouse·docker·容器
鱼鱼不愚与8 天前
处理 Clickhouse 内存溢出
数据库·分布式·clickhouse
Wonderful_一直有你8 天前
clickhouse - 重新建表覆盖旧表-解决分区时间错误问题-197001
clickhouse
千月落10 天前
ClickHouse副本集群
服务器·数据库·clickhouse
Steven-Russell10 天前
Clickhouse基于breakpad生成minidump文件,方便问题定位
clickhouse·breakpad