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

相关推荐
CatalyzeSec2 天前
Deepseek-ClickHouse数据库的安全策略
数据库·clickhouse·web安全·网络安全
楚钧艾克2 天前
利用go-migrate实现MySQL和ClickHouse的数据库迁移
数据库·redis·后端·mysql·clickhouse·migrate
fusugongzi3 天前
clickhouse集群搭建
linux·服务器·clickhouse
冬济3 天前
ClickHouse系列之ClickHouse使用
clickhouse
Cynthiaaaaalxy3 天前
clickhouse--本地表和分布式表,副本机制,分片集群
分布式·clickhouse
乐享极致3 天前
ClickHouse分布式高可用实战:ReplicatedMergeTree引擎深度解析与代码实践
分布式·clickhouse
m0_748244833 天前
clickhouse-介绍、安装、数据类型、sql
数据库·sql·clickhouse
Cynthiaaaaalxy3 天前
clickhouse--表引擎的使用
clickhouse
PengShuaiD54 天前
【数据库维护】如何解决Clickhouse数据库Too many parts报错
数据库·clickhouse
王百万_9 天前
【ClickHouse 特性及应用场景】
大数据·数据库·clickhouse·数据治理·数据库架构