美文网首页
ClickHouse外部字典表异常排查

ClickHouse外部字典表异常排查

作者: 淡淡的小番茄 | 来源:发表于2021-04-28 17:36 被阅读0次

删除字典表的时候,使用的语句应该是:

DETACH Dictionary dmp_log.ods_product;

由于同事错误了使用了命令,导致重新创建字典表不成功,错误的命令如下(当成表来操作了):

DETACH TABLE dmp_log.ods_product;

重新创建字典表报如下错误:

SQL 错误 [387]: ClickHouse exception, code: 387, host: 172.30.125.92, port: 8124; Code: 387, e.displayText() = DB::Exception: Dictionary dmp_log.ods_product already exists. (version 20.8.6.6 (official build))

由于把字典表当成表卸载了。然后再加载的时候,又报语法错误。

ATTACH TABLE dmp_log.ods_product;

解决的方法:

总体思路:既然当成表来DETACH了,那么再当成表来ATTACH即可。

1、ClickHouse metadata的目录

/data/clickhouse/metadata/dmp_log

找到误操作的表信息ods_product。

2、由于ods_product是字典表,语法与建表语句不一致。

所以需要将ods_product文件内容,修改为普通的建表语句,让ClickHouse能加载进去。

3、重启ClickHouse

3、执行删表语句

drop table ods.ods_product

4、新建字典表

CREATE DICTIONARY dmp_log.ods_product...

相关文章

网友评论

      本文标题:ClickHouse外部字典表异常排查

      本文链接:https://www.haomeiwen.com/subject/wmavrltx.html