我是靠谱客的博主 深情寒风,最近开发中收集的这篇文章主要介绍ClickHouse 备份恢复工具:CLICKHOUSE-BACKUP,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

https://www.cnblogs.com/xibuhaohao/p/13802693.html

回到顶部

官方网址:

https://altinity.com/blog/introduction-to-clickhouse-backups-and-clickhouse-backup

GitHub地址:

https://github.com/AlexAkulov/clickhouse-backup

回到顶部

Limitations

  • ClickHouse above 1.1.54390 is supported
  • Only MergeTree family tables engines
  • Backup of 'Tiered storage' or storage_policy IS NOT SUPPORTED!
  • Maximum backup size on cloud storages is 5TB
  • Maximum number of parts on AWS S3 is 10,000 (increase part_size if your database is more than 1TB)

回到顶部

一、下载安装

wget https://github.com/AlexAkulov/clickhouse-backup/releases/download/v0.5.2/clickhouse-backup.tar.gz
tar -xf clickhouse-backup.tar.gz
cd clickhouse-backup/
sudo cp clickhouse-backup /usr/local/bin
clickhouse-backup -v

当前版本
https://github.com/AlexAkulov/clickhouse-backup/releases/tag/v0.6.0
可以直接下载rpm或者tar包

 

 

回到顶部

二、配置clickhouse-backup

最小配置

$ cat /etc/clickhouse-backup/config.yml
general:
  remote_storage: none

生成全配置

 clickhouse-backup default-config

查看clickhouse-backup帮助

$ clickhouse-backup help
NAME:
clickhouse-backup - Tool for easy backup of ClickHouse with cloud support
...
COMMANDS:
   tables          Print list of tables
   create          Create new backup
   upload          Upload backup to remote storage
   list            Print list of backups
   download        Download backup from remote storage
   restore         Create schema and restore data from backup
   delete          Delete specific backup
   default-config  Print default config
   freeze          Freeze tables
   clean           Remove data in 'shadow' folder
   server          Run API server
   help, h         Shows a list of commands or help for one command

回到顶部

三、使用clickhouse-backup

1、查看可备份的表

$ clickhouse-backup tables
default.events
system.metric_log   (ignored)
system.query_log    (ignored)
system.query_thread_log (ignored)
system.trace_log    (ignored)

2、创建备份

$ sudo clickhouse-backup create
2020/07/06 20:13:02 Create backup '2020-07-06T20-13-02'
2020/07/06 20:13:02 Freeze `default`.`events`
2020/07/06 20:13:02 Skip `system`.`metric_log`
2020/07/06 20:13:02 Skip `system`.`query_log`
2020/07/06 20:13:02 Skip `system`.`query_thread_log`
2020/07/06 20:13:02 Skip `system`.`trace_log`
2020/07/06 20:13:02 Copy metadata
2020/07/06 20:13:02   Done.
2020/07/06 20:13:02 Move shadow
2020/07/06 20:13:02   Done.

3、查看备份

$ sudo clickhouse-backup list
Local backups:
- '2020-07-06T20-13-02' (created at 06-07-2020 20:13:02)
clickhouse-backup如上所述,在内部尽可能使用硬链接。备份存储在中/var/lib/clickhouse/backup/BACKUPNAME。
备份名称默认为时间戳,但是您可以选择使用–name标志指定备份名称。备份包含两个目录:一个“元数据”目录,
其中包含重新创建架构所需的DDL SQL语句;以及一个“影子”目录,其中包含作为ALTER TABLE ... FREEZE操作结果的数据。

4、数据还原

$ echo 'drop table events' | clickhouse-client

$ sudo clickhouse-backup restore 2020-07-06T20-13-02
2020/07/06 20:14:46 Create table `default`.`events`
2020/07/06 20:14:46 Prepare data for restoring `default`.`events`
2020/07/06 20:14:46 ALTER TABLE `default`.`events` ATTACH PART '202006_1_1_4'
2020/07/06 20:14:46 ALTER TABLE `default`.`events` ATTACH PART '202006_2_2_2'
2020/07/06 20:14:46 ALTER TABLE `default`.`events` ATTACH PART '202006_3_3_3'
2020/07/06 20:14:46 ALTER TABLE `default`.`events` ATTACH PART '202006_4_4_3'
2020/07/06 20:14:46 ALTER TABLE `default`.`events` ATTACH PART '202006_5_5_2'
2020/07/06 20:14:46 ALTER TABLE `default`.`events` ATTACH PART '202006_6_6_1'
该restore 子命令自动模式和数据恢复。如果只想还原架构,请使用可选--schema标志。或者,如果只想还原数据(假设架构已存在),则可以使用该--data标志。后一种情况在还原到已经具有现有数据的服务器时特别有用。

5、备份指定表与数据库

另一个有用的功能是支持使用大多数命令(例如创建和还原)指定表模式。该--table参数允许您备份(或还原)特定表。你也可以使用一个正则表达式,例如,针对特定的数据库:--table=dbname.*

6、备份到远程机器

略,查看官网

 

原创内容,转载请标明出处

最后

以上就是深情寒风为你收集整理的ClickHouse 备份恢复工具:CLICKHOUSE-BACKUP的全部内容,希望文章能够帮你解决ClickHouse 备份恢复工具:CLICKHOUSE-BACKUP所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(36)

评论列表共有 0 条评论

立即
投稿
返回
顶部