clickhouse由zk集群切回单机模式,启动报错

使用集群模式,需要在/etc/clickhouse-server/config.d下创建一个X文件(具体内容看其他大佬的帖子),然后在/etc/clickhouse-server/config.xml中include_from前面添加的X文件。

切回单机,则把/etc/clickhouse-server/config.xml中<include_from>标签删掉即可。

最开始用的单机模式,然后尝试了zk集群模式的副本和切片,当切回单机模式后启动报错。

报错信息如下:

No macro 'shard' in config while processing substitutions in '/clickhouse/tables/{shard}/st_order_mt' at 20: Cannot attach table `default`.`st_order_mt` from metadata file /var/lib/clickhouse/metadata/default/st_order_mt.sql from query ATTACH TABLE st_order_mt (`id` UInt32, `sku_id` String, `total_amount` Decimal(16, 2), `create_time` DateTime) ENGINE = ReplicatedMergeTree('/clickhouse/tables/{shard}/st_order_mt', '{replica}') PARTITION BY toYYYYMMDD(create_time) PRIMARY KEY id ORDER BY (id, sku_id) SETTINGS index_granularity = 8192

网上查了很多帖子,都说是上述的两个xml配置的问题,试了两个多小时,各种办法都试了,还是解决不了问题。

最后是看了下面这个帖子才明白问题出在哪
ClickHouse常见问题及其解决方案_Quinto0的博客-CSDN博客

原来是我前面尝试zk集群模式的副本、切片的时候创建的表,仍然存在于clickhouse的数据库中,单机启动的时候,识别不了这些集群模式的表,从而导致clickhouse启动报错。

解决办法:将/var/lib/clickhouse/metadata/ 下的SQL与/var/lib/clickhouse/data/ 下的数据备份之后删除,并重启clickhouse服务。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值