TDSQL Boundless 备份与恢复

查看进行 DDL 操作的表当前占用的空间,并通过当前实例的磁盘使用率判断是否有足够的空间进行 DDL 操作。SELECT table_name AS ‘表名’, ROUND((data_length + index_length) / 1024 / 1024, 2) AS ‘总空间(MB)’, ROUND(data_length / 1024 / 1024, 2) AS ‘数据空间(MB)’, ROUND(index。

相关产品
TDSQL Boundless 产品页,含版本规格、价格与购买入口。

一、操作前检查

1. 确认是否有足够的空间进行 DDL 操作。

注意:说明:

注意:部分 DDL 可以使用 instant DDL,不涉及空间占用,详细请参见 OnlineDDL 说明。

2. 查看同名表是否有超长数据的慢查询。

SELECT * FROM information_schema.processlist WHERE INFO LIKE "%表名%" ORDER BY TIME_MS DESC LIMIT 10;

若有,则等慢查询结束后再执行 DDL。

3. 针对大单表,查看数据分布,确认 IO 压力。

SELECT SUM(region_stats_approximate_size) AS size, COUNT(b.rep_group_id) AS region_nums, sql_addr, c.leader_node_name, b.rep_group_id FROM information_schema.META_CLUSTER_DATA_OBJECTS a JOIN information_schema.META_CLUSTER_REGIONS b JOIN information_schema.META_CLUSTER_RGS c JOIN information_schema.META_CLUSTER_NODES d ON a.data_obj_id = b.data_obj_id AND b.rep_group_id = c.rep_group_id AND c.leader_node_name = d.node_name WHERE a.schema_name = '数据库名' AND a.table_name = '表名' GROUP BY rep_group_id ORDER BY leader_node_name;

如果数据全部倾斜在某一个节点,建议将 max_parallel_ddl_degree 从默认8设置为4或者2,减少 DDL 并发线程以降低 IO 压力。

4. 通过租户端监控指标确认 CPU/IO 负载。

建议在业务低峰期进行 DDL 操作。

二、操作中查看进度

— 查看DDL,是否在执行,LAST_TIMESTAMP 若在更新,则表明 DDL 在执行,如果长时间没有更新,则可能 hang 住SELECT * FROM information_schema.ddl_jobs WHERE is_history = 0;– 查看进度则关注 information_Schema.ddl_jobs INFO 字段中的"progress"信息 ID: 13 SCHEMA_NAME: tdstore TABLE_NAME: sbtest1 VERSION: 13 DDL_STATUS: SUCCESSSTART_TIMESTAMP: 2025-08-08 14:29:35 LAST_TIMESTAMP: 2025-08-08 14:29:35 DDL_SQL: alter table tdstore.sbtest1 add index idx(v) INFO_TYPE: ALTER TABLE INFO: {"tmp_tbl":{"db":"tdstore","table":"#sql-d_1000be_6895994e0000ad_1"},"alt_type":1,"alt_tid_upd":{"tid_from":10039,"tid_to":10039},"cr_idx":[{"id":10040,"ver":4,"stat":0,"tbl_type":1,"idx_type":2}],"rm_idx":[],"init":false,"tmp_tab":false,"online_op":true,"wf_rmed":false,"online_copy_stage":0,"idx_op":true,"row_applied":true,"row_apply_saved":true,"current_schema_name":"tdstore","crt_data_obj_task_id":29437883249066288,"dstr_data_obj_task_id":0,"alt_tbl_pp_stage":0,"alt_tbl_policy_option":0,"data_obj_to_be_dstr_arr":[],"progress":"total: 1, scanned: 1 (100.00%)","fillback_mode":"ThomasWrite","exec_addr":{"ip":"10.10.10.10","port":15035},"recov_addr":{"ip":"10.10.10.10","port":15035}} IS_HISTORY: 1–通过租户端观察 CPU/IO 负载以及慢查询告警;

INFO 字段中的 progress 即是进度说明: "progress":"total: 1, scanned: 1 (100.00%)"

三、查看任务结果

–返回empty, 则表明 DDL job 执行结束SELECT * FROM information_schema.ddl_jobs WHERE is_history = 0;

赞 (0)
上一篇 4天前
下一篇 4天前