2

当我们为 ClickHouse 数据库交换磁盘时出现故障。当 ClickHouse 启动时,我必须附加所有表格,因为它们不存在通过ATTACH TABLE IF NOT EXISTS ....

有没有办法对物化视图做同样的事情?我找不到如何做到这一点的方法,当我尝试从头开始创建它时(CREATE MATERIALIZED VIEW IF NOT EXISTS ...,ClickHouse 说:

表的数据目录已经包含数据部分 - 可能是不干净的 DROP 表或手动干预。如果需要使用该部分,则必须手动清除目录或使用 ATTACH TABLE 而不是 CREATE TABLE。

所以文件仍然存在,但不知道如何附加视图。

4

2 回答 2

2

您需要附加“.inner”。先上表。

物化视图不存储数据,它们使用您在创建视图时选择的引擎创建一个特殊的表。该表的名称是“.inner.the_name_of_the_view”。

所以你需要先附加那个表,然后附加物化视图。

于 2018-05-19T12:05:33.560 回答
1

附加其他表并重新启动 ClickHouse 服务器时,视图会自动附加。我也试图附加 .inner 表,但它没有让我。

于 2018-05-25T16:00:13.527 回答