ClickHouse/docs/zh/operations/system-tables/mutations.md

50 lines
3.2 KiB
Markdown
Raw Normal View History

# system.mutations {#system_tables-mutations}
2020-06-22 08:45:22 +00:00
2022-02-22 02:13:25 +00:00
该表包含关于MergeTree表的[mutation](../../sql-reference/statements/alter.md#alter-mutations)及其进度信息 。每条mutation命令都用一行来表示。
2020-06-22 08:45:22 +00:00
该表具有以下列属性:
2020-06-22 08:45:22 +00:00
2022-02-22 02:13:25 +00:00
- `database` ([String](../../sql-reference/data-types/string.md)) — 应用mutation的数据库名称。
2020-06-22 08:45:22 +00:00
2022-02-22 02:13:25 +00:00
- `table` ([String](../../sql-reference/data-types/string.md)) — 应用mutation的表名称。
2020-06-22 08:45:22 +00:00
2022-02-22 02:13:25 +00:00
- `mutation_id` ([String](../../sql-reference/data-types/string.md)) — mutation的ID。对于复制表这些ID对应于ZooKeeper中<table_path_in_zookeeper>/mutations/目录下的znode名称。对于非复制表ID对应表的数据目录中的文件名。
2020-06-22 08:45:22 +00:00
2022-02-22 02:13:25 +00:00
- `command` ([String](../../sql-reference/data-types/string.md)) — mutation命令字符串`ALTER TABLE [db.]table`语句之后的部分)。
2020-06-22 08:45:22 +00:00
2022-02-22 02:13:25 +00:00
- `create_time` ([Datetime](../../sql-reference/data-types/datetime.md)) — mutation命令提交执行的日期和时间。
2020-06-22 08:45:22 +00:00
2022-02-22 02:13:25 +00:00
- `block_numbers.partition_id` ([Array](../../sql-reference/data-types/array.md)([String](../../sql-reference/data-types/string.md))) — 对于复制表的mutation该数组包含分区的ID每个分区都有一条记录。对于非复制表的mutation该数组为空。
2020-06-22 08:45:22 +00:00
2022-02-22 02:13:25 +00:00
- `block_numbers.number` ([Array](../../sql-reference/data-types/array.md)([Int64](../../sql-reference/data-types/int-uint.md))) — 对于复制表的mutation该数组包含每个分区的一条记录以及通过mutation获取的块号。只有包含块号小于该数字的块的part才会在分区中应用mutation。
2022-02-21 07:50:25 +00:00
2022-02-22 02:13:25 +00:00
在非复制表中所有分区中的块号组成一个序列。这意味着对于非复制表的mutation该列将包含一条记录该记录具有通过mutation获得的单个块号。
2022-02-21 07:50:25 +00:00
2022-02-22 02:13:25 +00:00
- `parts_to_do_names` ([Array](../../sql-reference/data-types/array.md)([String](../../sql-reference/data-types/string.md))) — 由需要应用mutation的part名称构成的数组。
2020-06-22 08:45:22 +00:00
2022-02-22 02:13:25 +00:00
- `parts_to_do` ([Int64](../../sql-reference/data-types/int-uint.md)) — 需要应用mutation的part的数量。
2020-06-22 08:45:22 +00:00
2022-02-22 02:13:25 +00:00
- `is_done` ([UInt8](../../sql-reference/data-types/int-uint.md)) — mutation是否完成的标志。其中
- 1表示mutation已经完成。
- 0表示mutation仍在进行中。
!!! info "注意"
2022-02-22 02:13:25 +00:00
即使 parts_to_do = 0由于长时间运行的`INSERT`查询将创建需要mutate的新part也可能导致复制表mutation尚未完成。
2022-02-22 02:13:25 +00:00
如果某些parts在mutation时出现问题以下列将包含附加信息
2022-02-22 02:13:25 +00:00
- `latest_failed_part`([String](../../sql-reference/data-types/string.md)) — 最近不能mutation的part的名称。
2022-02-22 02:13:25 +00:00
- `latest_fail_time`([Datetime](../../sql-reference/data-types/datetime.md)) — 最近的一个mutation失败的时间。
2022-02-22 02:13:25 +00:00
- `latest_fail_reason`([String](../../sql-reference/data-types/string.md)) — 导致最近part的mutation失败的异常消息。
**另请参阅**
- Mutations
- [MergeTree](../../engines/table-engines/mergetree-family/mergetree.md) 表引擎
2022-02-22 02:13:25 +00:00
- [ReplicatedMergeTree](../../engines/table-engines/mergetree-family/replication.md) 族
[Original article](https://clickhouse.com/docs/en/operations/system_tables/mutations) <!--hide-->