更新时间:2025-06-11 GMT+08:00
配置ClickHouse系统表的生命周期
操作场景
ClickHouse 默认未配置系统表的 TTL(Time To Live)机制,若长期使用且未手动设置过期策略,系统表中的历史数据将持续累积,可能导致磁盘空间被大量占用,甚至影响集群性能与存储可用性。
本章节指导用户配置系统表的生命周期,仅保留近30天的数据,减少系统表的磁盘使用。
约束与限制
本章节仅适用于MRS 3.2.0-LTS之前版本。
操作步骤
- 登录FusionInsight Manager系统。
详细操作请参考访问集群Manager。
- 创建具有系统表修改权限的ClickHouse用户,具体请参考创建具有ClickHouse权限的用户。
- 使用2创建的用户登录客户端节点,连接到ClickHouse服务端,具体请参考ClickHouse客户端使用实践。
- 清理存量系统表数据,执行如下命令:
truncate table system.query_log on cluster default_cluster; truncate table system.query_thread_log on cluster default_cluster; truncate table system.trace_log on cluster default_cluster;
其中:default_cluster为集群名称。
- 系统表配置TTL,保留近30天的数据,执行如下命令:
alter table system.query_log on cluster default_cluster modify TTL event_time + INTERVAL 30 day; alter table system.query_thread_log on cluster default_cluster modify TTL event_time + INTERVAL 30 day; alter table system.trace_log on cluster default_cluster modify TTL event_time + INTERVAL 30 day;
相关文档
更多TTL相关内容请参考https://clickhouse.com/docs/guides/developer/ttl#ttl-syntax。
父主题: ClickHouse运维管理