添加索引一直在跑,跑了几千秒都不行,只能cancel掉了; 两个不同的环境,数据库版本一致 ;一个可以创建成功 另一个不行

【TiDB 使用环境】生产环境 /测试/ Poc
【TiDB 版本】 8.0.11-TiDB-v8.5.1
【操作系统】
【部署方式】云上部署(什么云)/机器部署(什么机器配置、什么硬盘)
【集群数据量】
【集群节点数】
【问题复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【复制黏贴 ERROR 报错的日志】
【其他附件:截图/日志/监控】

看下是不是你的服务器上缺少对应的目录(/tmp/tidb/),如果没有,执行如下命令:
mkdir /tmp/tidb/tmp_ddl-4000 -p
chown tidb:tidb -R /tmp/tidb
然后再次添加索引试试

博主试了吗?效果怎么样?

现在一共有四个环境,其中两个环境不行,查看了一个,是有这个目录的。另一个是客户的环境,暂时没有查看。

查看是有这个目录的。

检查一下日志是否有报错,再丢日志上来看一下

目前索引添加不上,我们遇见的很大可能是由于某些机器 缺少 /tmp/tidb/tmp_ddl-4000 导致

1 个赞

用命令查看一下当前设置,SHOW VARIABLES LIKE 'tidb_ddl%‘ ,先确定是不是性能问题导致的卡死,如果不是看看是不是有死锁?

之前遇到过,在低配的情况下,关掉分布式执行框架就好了,可以试试:

SET GLOBAL tidb_enable_dist_task = OFF;

缺少日志、截图,发出来看看

这个可以试试看,环境不同,会有这个可能

不同环境上数据量是否一致,差异多大?

可以用命令查看下添加索引的进度
admin show ddl jobs

这个昨天看了,一直显示running…

一个五百多万,一个四百多万,五百多的那个成功了/

看看日志显示啥呢

那就奇怪了,最好把你的日志贴出来,看看有没有错误信息

1 个赞

可以按照楼上方法测试

可以切换下环境试下

统计信息不一样吧