请问下怎么修改ETCD里面的 key

【 TiDB 使用环境】生产环境
【 TiDB 版本】v6.3.0
【复现路径】我的DDL任务卡住,杀死进程、修改owner_id,重启集群都不行。看见以前有人遇到相同问题。解决方案是修改ETCD里的key,求这个操作步骤。

pd 的 etcd ?

https://docs.pingcap.com/zh/tidb/stable/tidb-control#etcd-命令

在tidb-ctl工具下,不过我觉得你还是需要慎重使用,起码应该确认下是不是etcd的问题。

目前碰上的ddl卡住,有2类。
1,因为锁的问题导致的卡住。这类一般重启能解决。
2,是因为tikv中对应表的mvcc版本太多,导致的ddl扫描时间巨长,看上去就像是卡住了。这类重启也不能解决。单纯就是ddl执行扫描时间太长。所以重启了,也没效果。见下面这个帖子。

至少这两类常见的问题中没有关于etcd出问题的情况,这个etcd的bug大概率不是导致ddl卡住的原因。你还需要确认一下到底原因为何,不建议上来就考虑删除etcd中的key。

DDL卡住不能执行 - #8,来自 h5n1.
我什么方式都试过了。最开始卡住的那个ddl已经14天了。

这个看了,就是不清楚该怎么用。

那这么说吧,你打算删etcd中的那个key呢?
总不能都删吧?有怀疑对象吗?

有两个13096512和13096513,我怀疑是这两个导致的。

那就先

tiup ctl:v6.3.0 tidb

安装tidb-ctl,然后

tiup ctl:v6.3.0 tidb etcd delkey “key值”

文档中提到只有2个目录下的key可以被删除

tidb-ctl etcd delkey 删除 etcd 中的 KEY,只有前缀以 /tidb/ddl/fg/owner//tidb/ddl/all_schema_versions/ 开头才允许被删除。

我现在也不确定在那个目录下。没处理过这类情况。

虽然我把方法给你了,但我始终不建议你这么做,我总觉得etcd不是根因,甚至有可能添乱。
你的心情我非常理解,不过越是这个时候,越不能忙中出错。不然情况越来越糟。供参考吧。

确实需要确认下是不是etcd的问题

如果真的要删除的话可以试一下 etcdctl

不可能重启集群也不行啊,你是用tiup cluster restart重启的吗

ETCD相关命令

查询所有key

ETCDCTL_API=3 etcdctl get “” –from-key --keys-only --limit 1

#修改key的值

ETCDCTL_API=3 etcdctl --endpoints=$ENDPOINTS put web1 value1

删除指定key

ETCDCTL_API=3 etcdctl --endpoints=$ENDPOINTS del key

集群重启了很多次,都还在。

过一段时间会消失吗