【问题标题】:Disable clickhouse logs in the system database在系统数据库中禁用 clickhouse 日志
【发布时间】:2023-02-07 20:16:33
【问题描述】:

在 clickhouse 中,有一个名为 system 的数据库,用于存储日志。
我的问题是,安装clickhouse后,系统数据库体积增加了一天,我发了一张图片,如果只用30天,服务器上要分配近30G的空间才行对于系统数据库,成本会很高。
特别是trace_logpart_log这两个表占用空间很大


如何禁用系统数据库中的日志?

我已经看到下面的链接并做了所有的事情,但它没有用 (link)。

以下命令无法阻止系统数据库日志:

set log_queries = 0;

而且以下代码对我不起作用:

cat /etc/clickhouse-server/users.d/log_queries.xml
<?xml version="1.0" ?>
<yandex>
  <users>
    <default>
      <log_queries>0</log_queries>
    </default>
  </users>
</yandex>

我什至去了这条路sudo nano /etc/clickhouse-server/config.xml 我输入了以下值,但没有用:

<logger>
    <level>none</level>
    <output>null</output>
</logger>

此外,我每次都重新启动 clickhouse 以应用更改

有趣的是,当我没有在我的代码中向我的数据库中插入任何数据时,系统数据库的大小无缘无故地增加。
我搜索了很多,做了很多测试,但我没有得到任何结果。谢谢你的指导

【问题讨论】:

    标签: database clickhouse


    【解决方案1】:

    您引用的设置控制 query_log 表,更多详细信息可在此处获得: https://clickhouse.com/docs/en/operations/system-tables/query_log/

    请注意,不建议关闭 query_log,因为此表中的信息对于解决问题很重要。

    trace_logpart_log 表是不同的,默认情况下不应启用,您可以在 config.xml 中找到这些块并对其进行注释:

    <trace_log>
        <database>system</database>
        <table>trace_log</table>
        <partition_by>toYYYYMM(event_date)</partition_by>
        <flush_interval_milliseconds>7500</flush_interval_milliseconds>
    </trace_log>
    

    <part_log>
        <database>system</database>
        <table>part_log</table>
        <partition_by>toMonday(event_date)</partition_by>
        <flush_interval_milliseconds>7500</flush_interval_milliseconds>
    </part_log>
    

    参考:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-22
      • 2019-09-26
      • 2011-02-06
      • 2013-04-13
      • 2011-11-22
      • 1970-01-01
      • 2014-04-30
      • 2013-01-03
      相关资源
      最近更新 更多