clickhouse 数据备份与恢复
Posted 逆风飞翔的小叔
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了clickhouse 数据备份与恢复相关的知识,希望对你有一定的参考价值。
一、前言
与其他的数据存储引擎类似,clickhouse承载着大数据量级的数据存储,对于数据的备份与恢复也是必须考虑的,本文将通过操作演示下如何对clickhouse数据进行备份与恢复。
官网说明: 官网备份操作说明clickhouse可以通过手动进行数据恢复,也可以通过工具进行恢复;
二、clickhouse 数据手动备份与恢复演示
ClickHouse 允许使用 ALTER TABLE ... FREEZE PARTITION ... 查询以创建表分区的本地副本。
这是利用硬链接(hardlink)到 /var/lib/clickhouse/shadow/ 文件夹中实现的,所以它通常不会因为旧数据而占用额外的磁盘空间。 创建的文件副本不由 ClickHouse 服务器处理,所以不需要任何额外的外部系统就有一个简单的备份。防止硬件问题,最好将它们远程复制到另一个位置,然后删除本地副本。
在正式操作之前,再温馨提示下,clickhouse使用rpm的方式安装时,几个安装后的数据文件目录位置:
bin/ /usr/bin
conf/ /etc/clickhouse-server
lib/ /var/lib/clickhouse
log/ /var/log/clickhouse
我可以使用帮助二进制转储文件恢复数据库 clickhouse 吗?
【中文标题】我可以使用帮助二进制转储文件恢复数据库 clickhouse 吗?【英文标题】:Can I restore database clickhouse with help binary dump file? 【发布时间】:2021-04-06 09:08:27 【问题描述】:我有带有 clickhouse 数据库的 docker 容器。我有我们生产的备份。但是我尝试了很多恢复的情况。当我使用命令(在容器中):clickhouse-client --format Raw --file 21_02_04_db.backup
时,我收到错误Bad arguments: unrecognised option '--file'
。好的,我尝试不使用此选项:clickhouse-client --format Raw < 21_02_04_db.backup
,但出现错误:
Code: 62. DB::Exception: Syntax error: failed at position 1 ('') (line 1, col 1): �TimDateTime�#�]��]�k�]u �]0&�] 9�]�-�]��]�I�]U��]���]yy�]���]�\�]�\�]��]B�]�j�]v)�]�d�]J��]�F�]�]�]��]t%�]t%�]���]��]F?�]�B�]��]W3�]��]E��]P��]a�. Unrecognized token: '' I use other backups but in many cases I get similar error. Maybe someone tried restore backup clickhouse with help binary data? I try many cases but I didn't search solution.
【问题讨论】:
你是如何备份数据库的——使用clickhouse-backup-tool? 【参考方案1】:看起来像原生格式
应该是这样的
clickhouse-client -q 'insert into mytable format Native' < 21_02_04_db.backup
【讨论】:
好的,但是如果我备份了整个数据库,如果我将插入某个表,那么我将只得到一张表和该表的数据?或者我的转储会将所有数据填充到一张表中? Clickhouse 没有整个数据库的备份。以上是关于clickhouse 数据备份与恢复的主要内容,如果未能解决你的问题,请参考以下文章