tencent cloud

文档反馈

数据备份

最后更新时间:2021-07-01 10:49:02

    ClickHouse 数据目录的配置默认在 config.xml 中的 path 字段,默认目录为 /data/clickhouse/clickhouse-server/data

    数据目录格式

    某个 clickhouse-server 的数据目录结构如下所示。

    test
    |-- account
    |   |-- all_1_1_0
    |   |   |-- checksums.txt
    |   |   |-- columns.txt
    |   |   |-- count.txt
    |   |   |-- name.bin
    |   |   |-- name.mrk2
    |   |   |-- id.bin
    |   |   |-- id.mrk2
    |   |   |-- age.bin
    |   |   |-- age.mrk2
    |   |   |-- primary.idx
    |   |-- detached
    |-- |-- format_version.txt
    
    • 第一级目录显示数据库名称,例如 test。
    • 第二级目录为表名称,上述例子中 test 数据库中存在 account 数据表。
    • 第三级目录显示分区目录。
      • checksum.txt 存储数据校验信息。
      • columns.txt 保存数据列的列名和数据类型。
      • count.txt 存储该分区的数据总数。
      • .bin.mrk2 文件保存数据信息。

    数据备份方法

    ClickHouse 官方提供了 clickhouse-backup 备份工具,该工具可以将 clickhouse-server 进程的数据目录备份到公有云的对象存储上。

    步骤一:准备配置文件 config.yml

    在文件中添加公有云对象存储的 url、secret_id、secret_key、clickhouse-server 端的地址和访问信息等。新建 /etc/clickhouse-backup 目录,将配置文件移动到该目录下。

    general:
    remote_storage: cos
    disable_progress_bar: false
    backups_to_keep_local: 0
    backups_to_keep_remote: 0
    clickhouse:
    username: default
    password: ""
    host: 127.0.0.1
    port: 9000
    data_path: ""
    skip_tables:
    - system.*
    timeout: 5m
    cos:
    url: "https://${bucket-name}.cos.${region}.myqcloud.com"
    timeout: 100
    secret_id: "xxxxxx"
    secret_key: "yyyyy"
    path: "/"
    compression_format: gzip
    compression_level: 1
    debug: false
    

    步骤二:使用 clickhouse-backup 工具创建备份目录

    $ ./clickhouse-backup create testbak1
    # 使用list查看是否创建成功
    $ ./clickhouse-backup list local
    - 'testbak1'    (created at 26-03-2020 02:55:23)
    

    步骤三:使用 clickhouse-backup 工具打包数据到对象存储上

    执行命令后,查看 COS 桶相应的目录下是否存在压缩文件 testbak1.tar.gz

    $ ./clickhouse-backup upload testbak1 2020/03/25 12:58:25 Upload backup 'testbak1' 1.27 MiB / 1.27 MiB [===========================] 100.00% 0s 2020/03/25 12:58:26 Done.
    

    参考资料

    clickhouse-backup tool

    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持