背景
最近在做智慧社区的项目,随着用户、设备数量越来越大。原先装在虚拟机上的数据库需要做迁移,迁到新申请的物理机器上。今天就给大家分享下,如何做小规模的ClickHouse数据库迁移。
迁移
ClickHouse两个节点,可以理解为一分片一副本的部署方式。针对不同的表引擎,总结了下迁移方式:
1、复制表引擎
对于复制表,迁移还是比较方便的。对于数据表结构一样的迁移,可以将新节点作为新副本即可。如下图:

新副本创建后,会自动拉取数据。待数据同步完成后,可以考虑将副本01和02删除掉。命令示例如下:
SYSTEM DROP REPLICA 'replica_name' FROM ZKPATH '/path/to/table/in/zk';
详细的可以参考官方文档:https://clickhouse.com/docs/en/sql-reference/statements/system/
如果不想建那么多副本,也可直接建两个新的节点,如下图:

然后通过remote函数将副本01的数据导入到新的01上。
2、普通merge表引擎
对于普通的merge表,如果想迁移的话
3、Kafka引擎表
网友评论