当前位置: 首页 > news >正文

Clickhouse学习笔记(15)—— Clickhouse备份

手动备份

参考官网:Backup and Restore | ClickHouse Docs

简单来说,就是我们可以通过ALTER TABLE ... FREEZE PARTITION ...命令为表分区创建一个本地副本,然后这个副本硬链接到/var/lib/clickhouse/shadow/文件夹,因此其不会耗费额外的硬盘空间

而且为了防止硬件问题,最好将该副本拷贝到其他的位置并且删除该本次副本;

接下来依照此思路进行试验:

本次备份

首先按创建用于存放备份数据的目录 shadow:

sudo mkdir -p /var/lib/clickhouse/shadow/

执行备份命令:(对表t_order_mt进行备份)

echo -n 'alter table t_order_mt freeze' | clickhouse-client

有关表t_order_mt可以参考

Clickhouse学习笔记(3)—— Clickhouse表引擎-CSDN博客

中MergeTree(合并树)部分

完成数据本地副本的备份之后查看其中的内容:

与原数据文件对比:

发现该副本是从/var/lib/clickhouse/store文件夹下直接拷贝的数据;


存储到其他路径

接下来将备份数据保存到其他路径:

创建backup文件夹:sudo mkdir -p /var/lib/clickhouse/backup/

拷贝数据:sudo cp -r /var/lib/clickhouse/shadow/ /var/lib/clickhouse/backup/t_order_mt

为下次备份准备,删除 shadow 下的数据:sudo rm -rf /var/lib/clickhouse/shadow/*


数据恢复

  • 删除备份过的表:echo ' drop table t_order_mt ' | clickhouse-client
  • 重新创建表;
  • 然后备份复制到 detached 目录:sudo cp -rl /var/lib/clickhouse/backup/t_order_mt/1/store/092/092cf360-d509-4379-892c-f360d509d379/* /var/lib/clickhouse/data/default/t_order_mt/detached/
  • 执行attach:echo 'alter table t_order_mt attach partition 20200601' | clickhouse-client
  • 查看数据:

clickhouse-backup

clickhouse的自动化备份工具,下载地址:https://github.com/AlexAkulov/clickhouse-backup/

首先上传并安装(rpm):sudo rpm -ivh clickhouse-backup-1.0.0-1.x86_64.rpm

该工具由两部分组成:

①配置文件,路径:/etc/clickhouse-backup/config.yml

注意:1.0.0不支持hdfs

②命令:/usr/bin/clickhouse-backup

常用操作

查看可用命令:clickhouse-backup help

显示要备份的表: clickhouse-backup tables

创建备份:clickhouse-backup create

创建完成后在/var/lib/clickhouse/backup文件夹中可以看到备份文件:

可以通过–name 标志指定备份名称

查看现有的本地备份:clickhouse-backup list

从备份恢复数据:sudo clickhouse-backup restore 2023-08-07T06-58-10

首先删除表t_order_mtecho 'drop table t_order_mt' | clickhouse-client

但是删除完成后发现store文件夹中依旧存在该表对应的数据文件:

可知此时还未完全删除

如果执行备份语句会报错:

但是无论是metadata还是store文件夹中,对应的sql语句都已删除

于是手动删除store文件夹下t_order_mt表对应的数据,之后重试备份恢复:

又有报错,但此时可以看到store中相应的数据已经恢复;

但此时去查询表是查不到的,而且再次备份又会出现同样的报错.......


解决方法:

先还原表结构:clickhouse-backup restore 2023-08-07T06-58-10 --schema

再还原数据:clickhouse-backup restore 2023-08-07T06-58-10 --data

--table 参数:备份(或还原)特定表。也可以使用一个正则表达式,例如,针对特定的数据库:--table=dbname.*


其他注意事项:

(1)API 文档:https : //github.com/AlexAkulov/clickhouse-backup#api

(2)注意事项:切勿更改文件夹/var/lib/clickhouse/backup 的权限,可能会导致数据损坏

(3)远程备份

➢ 较新版本才支持,需要设置 config 里的 s3 相关配置

➢ 上传到远程存储:sudo clickhouse-backup upload xxxx

➢ 从远程存储下载:sudo clickhouse-backup download xxxx

➢ 保存周期: backups_to_keep_local,本地保存周期,单位天backups_to_keep_remote,远程存储保存周期,单位天0 均表示不删除

相关文章:

Clickhouse学习笔记(15)—— Clickhouse备份

手动备份 参考官网:Backup and Restore | ClickHouse Docs 简单来说,就是我们可以通过ALTER TABLE ... FREEZE PARTITION ...命令为表分区创建一个本地副本,然后这个副本硬链接到/var/lib/clickhouse/shadow/文件夹,因此其不会耗…...

想买GPT4会员却只能排队?来看看背后的故事!

文章目录 🧐 为什么要进候选名单?🔍 究竟发生了什么?😮 IOS端还能买会员!🤔 网页端为啥不能订会员?第一点:防止黑卡消费第二点:当技术巨头遇上资源瓶颈&#…...

Oracle(17)Managing Roles

目录 一、基础知识 1、基础介绍 2、Predefined Roles 预定义的角色 3、各种角色的介绍 二、基础操作 1、创建角色 2、修改用户默认role 3、回收role 4、删除role 5、为角色授权 6、授予角色给用户 7、查看用户包含的角色: 8、查看角色所包含的权限 9、…...

小程序中如何设置门店信息

小程序是商家转型升级的利器,小程序中门店信息的准确性和完整性对于用户的体验和信任度都有很大的影响。下面具体介绍门店信息怎么在小程序中进行设置。 在小程序管理员后台->门店设置处,可以门店设置相关。主要分为2个模块,一个是门店级…...

SCons

什么是构建工具(系统) 构建工具(software construction tool)是一种软件,它可以**根据一定的规则或指令,将源代码编译成可执行的二进制程序。**这是构建工具最基本也最重要的功能。 实际上构建工具的功能…...

蓝桥杯每日一题2023.11.14

题目描述 题目分析 此题目的最终目标是将字母都填上数使等式符合条件&#xff0c;实际我们发现可以使用搜索将所有符合条件的进行判断&#xff08;答案&#xff1a;29&#xff09; 由于小数可能会出现错误故我们将其进行简单变化进行搜索 #include<bits/stdc.h> using…...

力扣labuladong——一刷day33

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、力扣652. 寻找重复的子树 前言 前序位置的代码只能从函数参数中获取父节点传递来的数据&#xff0c;而后序位置的代码不仅可以获取参数数据&#xff0c;还可…...

spring cloud alibaba之nacos

spring cloud nacos 安装和启动nacos # 解压nacos安装包 # tar -zvxf nacos-server-1.4.1.tar.gz# nacos默认是以集群的模式启动&#xff0c;此处先用单机模式 # cd /usr/local/mysoft/nacos/bin # sh startup.sh -m standalone# nacos 日志 # tail -f /usr/local/mysoft/na…...

python自动化第一篇—— 带图文的execl的自动化合并

简述 最近接到一个需求&#xff0c;需要为公司里的一个部门提供一个文件上传自动化合并的系统&#xff0c;以供用户稽核&#xff0c;谈到自动化&#xff0c;肯定是选择python&#xff0c;毕竟python的轮子多。比较了市面上几个用得多的python库&#xff0c;我最终选择了xlwings…...

使用 Redis 实现分布式锁,解决分布式锁原子性、死锁、误删、可重入、自动续期等问题(使用SpringBoot环境实现)

目录 一、前言二、分布式锁具备的特点三、Redis分布式锁的实现核心思路四、分布式锁代码实现&#xff08;解决分布式锁原子性、死锁、误删、可重入、自动续期等问题&#xff09;4.1、分布式锁实现工具类4.2、测试分布式锁效果 五、分布式锁常见问题以及解决方法5.1、分布式锁死…...

mysql oracle统计报表每天每月每年SQL

mysql查询当天、昨天、本周、上周、近7天、近30天、本月、上个月、近6个月、本季度、上季度、本年和去年的数据 注意 在 XML 中 < 应该转为 < 当天 SELECT * FROM 表名 WHERE TO_DAYS(时间字段名) TO_DAYS(NOW()); 昨天 SELECT * FROM 表名 WHERE TO_DAYS(NOW()) - TO…...

通过Python设置及读取PDF属性,轻松管理PDF文档

PDF文档属性是嵌入在PDF文档中的一些与文档有关的信息&#xff0c;如作者、制作软件、标题、主题等。PDF属性分为默认属性和自定义属性两种&#xff0c;其中默认属性是一些固定的文档信息&#xff0c;部分信息自动生成&#xff08;如文件大小、页数、页面大小等信息&#xff09…...

10. 深度学习——模型优化

机器学习面试题汇总与解析——模型优化 本章讲解知识点 前言低秩近似剪枝与稀疏约束参数量化二值网络知识蒸馏紧凑的网络结构本专栏适合于Python已经入门的学生或人士,有一定的编程基础。本专栏适合于算法工程师、机器学习、图像处理求职的学生或人士。本专栏针对面试题答案进…...

macos 上彻底卸载 DevEco Studio

1. 退出DevEco Studio&#xff1a; 确保DevEco Studio没有在运行。如果它在Dock中&#xff0c;可以右键点击其图标&#xff0c;然后选择退出。或者使用Command Q快捷键确保应用程序完全退出。 2. 删除DevEco Studio应用程序&#xff1a; 打开“应用程序”文件夹&#x…...

Nginx(五) break,if,return,rewrite和set指令的执行顺序深究

本篇文章主要对break&#xff0c;if&#xff0c;return&#xff0c;rewrite和set这5个指令的执行顺序进行深究&#xff0c;如需了解这5个指令的功能和配置&#xff0c;请参考另一篇文章 Nginx(三) 配置文件详解 由于文章篇幅较长&#xff0c;所以我就先把结论贴出来&#xff0c…...

八大学习方法(金字塔模型、费曼学习法、布鲁姆学习模型)

在微博上看到博主发的&#xff0c;觉得总结很好&#xff0c;在此摘录&#xff1a;...

K8S的基础知识

K8S的意义与入门 专有名词 容器:包含了运行一个应用程序所需要的所有东西,包括:代码、运行时、各种依赖和配置。pod:K8s调度的最小单元,包含一个或多个容器。一个容器组中的容器具有紧密耦合性,共享资源,存储空间和IP。即同一个容器组中的容器可以通过localhost:xxx访问…...

java:基于jjwt写一个jwt工具类

背景 在Java中&#xff0c;使用JWT&#xff08;JSON Web Tokens&#xff09;相关的包通常包括以下内容&#xff1a; jjwt&#xff1a;JJWT是一个非常流行的Java JWT库&#xff0c;它提供了简单易用的API来创建和验证JWT。jose4j&#xff1a;JOSE4J是一个用于处理JSON Web签名…...

AK F.*ing leetcode 流浪计划之半平面求交

欢迎关注更多精彩 关注我&#xff0c;学习常用算法与数据结构&#xff0c;一题多解&#xff0c;降维打击。 本期话题&#xff1a;半平面求交 背景知识 学习资料 视频讲解 https://www.bilibili.com/video/BV1jL411C7Ct/?spm_id_from333.1007.top_right_bar_window_history…...

docker搭建zokeeper集群、kafka集群

三台机器&#xff0c;ip分别为ip1,ip2,ip3 一、安装docker集群 1、三台机器分别拉取镜像 docker pull wurstmeister/zookeeper 2、三台机器分别运行容器 &#xff08;1&#xff09;第一台 docker run -d --restartalways --log-driver json-file --log-opt max-size100m --lo…...

BetterJoy完整配置指南:5分钟让Switch手柄在PC上完美运行

BetterJoy完整配置指南&#xff1a;5分钟让Switch手柄在PC上完美运行 【免费下载链接】BetterJoy Allows the Nintendo Switch Pro Controller, Joycons and SNES controller to be used with CEMU, Citra, Dolphin, Yuzu and as generic XInput 项目地址: https://gitcode.c…...

AI时代程序员职业发展与个人创业可行性研究报告

一、行业宏观变革&#xff08;2026核心趋势数据佐证&#xff09; 1.1 开发范式已彻底重构&#xff08;行业不可逆拐点&#xff09; 2026年正式进入AI Agent智能体开发时代&#xff0c;传统CRUD编码价值持续崩塌。 核心权威数据&#xff1a; Gartner预测&#xff1a;2026年75%企…...

WarcraftHelper:魔兽争霸III现代兼容性问题的终极解决方案指南

WarcraftHelper&#xff1a;魔兽争霸III现代兼容性问题的终极解决方案指南 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 魔兽争霸III作为经典即时战…...

Windows文件夹共享

目标&#xff1a;同一局域网实现在一台计算机上共享文件夹&#xff0c;在另一台电脑访问一、电脑A 1.点击要共享的文件夹 -> 属性 -> 共享2.添加Everyone用户组3.控制面板中网络共享关闭密码保存&#xff0c;在访问时不用输入账号密码。二、电脑B 1.在文件资源管理器路径…...

阿波罗登月,不可能:读心术与影子叙事 ——不是向全世界展示登月,而是向全世界注射登月

阿波罗登月&#xff0c;不可能&#xff1a;读心术与影子叙事 ——不是向全世界展示登月&#xff0c;而是向全世界注射登月 Jianbing Zhu 1^{1}1 1^{1}1 ECT-OS-JiuHuaShan 文明实验室 ORCID: 0009-0006-8591-1891 DOI: 10.5281/zenodo.20373157 Email: ect-os-jiuhuashanzoho…...

工业云脑:06 现在就能干:树莓派边缘盒子+PLC,10分钟缺陷检测小案例

06 现在就能干:树莓派边缘盒子+PLC,10分钟缺陷检测小案例 今天第九篇06小节——现在就能干:树莓派边缘盒子+PLC,10分钟缺陷检测小案例。新手照着做10分钟就能跑起来,老手一看就知道这玩意儿省了多少钱。以前想上AI检测,得花几万块买专业边缘盒子;现在?树莓派5(RPi 5)…...

为什么你的DeepSeek总漏检重构后代码?4步反混淆预处理法(附LLM辅助去装饰器Python脚本)

更多请点击&#xff1a; https://codechina.net 第一章&#xff1a;DeepSeek代码重复检测 DeepSeek-R1 模型在训练过程中引入了严格的代码去重机制&#xff0c;其核心目标是消除训练语料中语义等价或高度相似的代码片段&#xff0c;从而提升模型对真实编程模式的学习能力与泛化…...

软件测试行业的未来趋势:这3类测试将成为主流

随着数字化转型的深入推进&#xff0c;软件已经成为驱动各行业变革的核心生产力&#xff0c;从自动驾驶汽车到企业级云原生平台&#xff0c;从智慧医疗设备到工业互联网系统&#xff0c;软件的复杂度、规模和对安全性的要求都在呈指数级增长。作为软件质量保障的核心环节&#…...

OpenClaw 源码解析(五):setup / onboard 与本地配置初始化

1. 本期目标 上一期我们分析了 OpenClaw 的 CLI 启动链路&#xff1a;用户输入 openclaw 命令后&#xff0c;程序会先经过 entry.ts、run-main、Commander Program 构建和命令注册流程&#xff0c;然后再进入具体命令逻辑。 这一期继续往下看&#xff0c;重点分析两个最基础的…...

云厂商认证的价值变迁:从AWS到阿里云,哪个含金量更高?

当测试工程师开始关注云认证过去十年&#xff0c;软件测试领域的认证风向悄然生变。十年前&#xff0c;测试工程师手中的王牌是ISTQB&#xff08;国际软件测试资格委员会&#xff09;基础级或高级证书&#xff0c;这份全球通用的“测试护照”足以敲开大多数企业的大门。然而&am…...