mysql ctas_ClickHouse 备份与恢复

本文详细介绍了ClickHouse的多种备份方式,包括文本文件导入导出、CTAS表快照、ALTER TABLE...FREEZE以及使用Clickhouse-Backup工具进行备份。通过实例展示了每种方法的操作步骤,对比了不同备份方式的效率和空间占用。同时,还提供了数据恢复的流程,强调了备份在数据安全中的重要性。
摘要由CSDN通过智能技术生成

本文转载自 万能修实验室 作者:公先生 ID: dropudatabase

我们评估一款数据库产品,除了稳定性和易用性外,数据安全也十分重要,备份与恢复往往是最后一道安全门。

但如果备份策略不完善、恢复手段无效,一旦发生数据误删除就真的抢救无效-扑街了。

目前Clickhouse的备份方式有以下几种:

文本文件导入导出

表快照

ALTER TABLE…FREEZE

备份工具Clickhouse-Backup

Clickhouse-Copier

下面就逐个试试吧。

# 数据备份 概述

https://clickhouse.tech/docs/en/operations/backup/

1. 文本文件导入导出

# 测试数据

MySQL中源数据6.70G,表数据量899万

--测试表数据量899万--MySQL中源数据6.70G0 rows in set. Elapsed: 71.482 sec. Processed 8.99 million rows, 6.70 GB (125.77 thousand rows/s., 93.71 MB/s.)

# 导出

clickhouse-client --query="select * from caihao.ch_test_customer" > /data/clickhouse/tmp/caihao.ch_test_customer.tsv

# 导入 (注意FORMAT后面大写) 多个文件可以用 ch_test*

cat /data/clickhouse/tmp/caihao.ch_test_customer.tsv | clickhouse-client --query="insert into caihao.ch_test_customer FORMAT TSV"

速度:导入需要20多秒

# CH文件磁盘占用 368MB

368 ch_test_customer

# 备份文件3.5G 压缩后139MB

[root@clickhouse-01 tmp]# du -hsm *3539 caihao.ch_test_customer.tsv[root@clickhouse-01 tmp]# gzip caihao.ch_test_customer.tsv[root@clickhouse-01 tmp]# du -hsm *139 caihao.ch_test_customer.tsv.gz

# 对比下占用空间:

MySQL -- 6.7G

ClickHouse -- 368M

导出文本 -- 3.5G

压缩后 -- 139M

2. CTAS表快照

# 1 本地复制表

clickhouse-01 :) create table ch1 as ch_test_customer ;CREATE TABLE ch1 AS ch_test_customerOk.0 rows in set. Elapsed: 0.006 sec. clickhouse-01 :) insert into table ch1 select * from ch_test_customer ;INSERT INTO ch1 SELECT *FROM ch_test_customerOk.0 rows in set. Elapsed: 18.863 sec. Processed 8.99 million rows, 6.70 GB (476.59 thousand rows/s., 355.13 MB/s.)

# 2 远程复制表

https://clickhouse.tech/docs/en/sql-reference/table-functions/remote/

-# 语法remote('addresses_expr', db, table[, 'user'[, 'password']])remote('addresses_expr', db.table[, 'user'[, 'password']])-# 例子:dba-docker :) insert into table ch1 select * from remote ('10.222.2.222','caihao.ch_test_customer','ch_app','qwerty_123');INSERT INTO ch1 SELECT *FROM remote('10.222.2.222', 'caihao.ch_test_customer', 'ch_app', 'qwerty_123')Ok.0 ro

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值