参考:

1:remote, remoteSecure | ClickHouse Docs

2: clickhouse-client命令行参数及常用案例

3:clickhouse数据库备份_clickhouse 备份

4:ClickHouse:使用clickhouse-backup进行数据搬迁

1】通过remote函数进行数据迁移,整表迁移

insert into test.table select * from remote('xxx.xx.x.xxx', test.table, 'xxxx', 'xxxx');

2】通过remote函数进行数据迁移,按行迁移

CREATE TABLE remote_table (name String, value UInt32) ENGINE=Memory;
INSERT INTO FUNCTION remote('xxx.xxx.x.xx', currentDatabase(), 'remote_table') VALUES ('test', 42);
SELECT * FROM remote_table;

3】通过client导出导入方式进行数据迁移

下载client:mac 安装 clickhouse-client 客户端

打开并测试client: /Users/xiaokkk/clickhouse client

单表导出
/Users/xiaokkk/clickhouse client --host=192.168.1.168 --port=9000 --user=default --password=password --database test --format_csv_delimiter="@" --query="select * from test_table limit 1000 FORMAT CSV" > test_table.csv


单表导入
cat test_table.csv | /Users/xiaokkk/clickhouse client --host=xxx.xx.x.xxx --port=9000 --user=default --password=password --database test --format_csv_delimiter="@" --query="INSERT INTO test.test_table FORMAT CSV"

4】clickhouse-backup

clickhouse-backup 不直接支持使用 8123 端口(HTTP端口)进行备份和恢复操作。它是通过与 ClickHouse 数据库的 TCP 端口进行交互,通常使用的是 9000 端口。clickhouse-backup 使用 ClickHouse 的自定义二进制协议与数据库进行通信,以实现高性能的数据备份和恢复。


# 指定数据库
clickhouse-backup restore 2023-06-29T10-20-07 --tables=test.*
# 指定数据表
clickhouse-backup restore 2023-06-29T10-20-07 --tables=test.test1
# 全部恢复
clickhouse-backup restore 2023-06-29T10-20-07 

被恢复的数据表 表引擎需要满足要求(MergeTree家族),不然就报错

5】将store\metadata\data等文件夹进行转移

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐