未设置 system.query_log 的 TTL (clickhouse)

Posted

技术标签:

【中文标题】未设置 system.query_log 的 TTL (clickhouse)【英文标题】:TTL for system.query_log is not set (clickhouse) 【发布时间】:2021-10-07 15:30:05 【问题描述】:

当我在 config.xml 文件中使用<engine> 标记为 query_log 表设置 ttl - 删除旧表后为新表 query_log 设置 ttl:

<query_log>
    <database>system</database>
    <table>query_log</table>
    <engine>ENGINE = MergeTree PARTITION BY toYYYYMM(event_date)
        ORDER BY (event_date, event_time)
        TTL event_date + INTERVAL 1 MINUTE DELETE
        SETTINGS min_bytes_for_wide_part = '10M'
    </engine>
    <flush_interval_milliseconds>7500</flush_interval_milliseconds>
</query_log>

但是当我想在单独的标签 &lt;ttl&gt; 中配置 ttl 时 - 没有为新的 query_log 表设置 ttl:

<query_log>
    <database>system</database>
    <table>query_log</table>
    <partition_by>toYYYYMM(event_date)</partition_by>
    <ttl>event_date + INTERVAL 1 MINUTE DELETE</ttl>
    <flush_interval_milliseconds>7500</flush_interval_milliseconds>
</query_log>

我使用 clickhouse 20.8.2.3

有人可以帮我解决这个问题吗?我想使用 &lt;ttl&gt; 选项

【问题讨论】:

【参考方案1】:

20.8.2.3 不支持。

您需要升级。

https://github.com/ClickHouse/ClickHouse/blob/master/CHANGELOG.md#clickhouse-release-v211215-stable-2021-01-18

ClickHouse 版本 v21.1.2.15-stable 2021-01-18

使用 config.xml 中的 &lt;ttl&gt; 属性,允许指定 TTL 以从系统日志表中删除旧条目。 #17438(杜川)。

【讨论】:

以上是关于未设置 system.query_log 的 TTL (clickhouse)的主要内容,如果未能解决你的问题,请参考以下文章

无法在 clickhouse 设置中添加设置“log_queries=1”

使用正则表达式查找命令未按预期工作

tt_address:更新到 Typo3 6.2 后后端未显示扩展字段

…… P:=IF(PERIOD=5,FROMOPEN,TT); 同花顺提示:PERIOD未定义,如何处理?请高手惠助!

android project clean后无法生成R.java文件,因为程序中有编译错误,但是错误都是因为R文件资源未找到TT?

脚本编程