机器a迁移到机器b上,服务起不起来,报身份认证错误,未修改新机器任何配置文件

【TDengine 使用环境】
生产环境

【TDengine 版本】

3.3.8.1

【操作系统以及版本】

centos 7

【部署方式】

容器

【集群节点数】

默认

【集群副本数】

默认

【描述业务影响】

无法使用

【问题复现路径/shan】

将生产环境挂载的数据卷迁移到新机器上,新机器未修改任何配置,服务起不来,一直身份认证错误

【遇到的问题:问题现象及影响】

完全用不了,docker容器停止

【资源配置】

单机器

【报错完整截图】

机器码发生变更需要重新授权

开源还是企业版?

开源版本3.3.8.1

机器嘛怎么进行重新授权?

是不是下载的企业版安装包?

开源版本3.3.8.1,不是企业版的,空数据启动是能启动成功的,加了线上数据就起不成功了,线上环境也是3.3.8.1,也在正常运行

系统已经正常启动了。从错误提示看,是 root 密码不正确,登录时指定正确的 root 密码了是吧?

docker容器没启动起来,直接退出了

是在 docker 上自己安装的 TDengine,还是直接使用的官网 TDengine docker 版?

问题复现:
机器A启动tdengine时不指定密码,进入web页面修改密码,将数据卷迁移至机器B上,将无法启动
bug形成原因:

1.docker启动时,其运行脚本entrypoint.sh会在启动时校验taos是否已启动成功,若指定密码则会修改改密码,并且生成.docker-entrypoint-root-password-changed文件

2.我在A机器未指定密码,所以数据卷下面未生成.docker-entrypoint-root-password-changed,在页面修改密码后,我的密码不再是taosdata,迁移至机器B后指定密码后,而数据卷下没有.docker-entrypoint-root-password-changed,启动脚本将走修改密码逻辑,而我密码已经变了,修改密码会直接报错,导致脚本退出,docker容器死亡.

3. 如果不指定密码,脚本最后会用taosdata去校验taos服务,也会失败导致容器死亡

希望下个版本优化一下这个启动逻辑或这修改一下修改密码的逻辑

@Jade @Roy

docker拉取的docker镜像

OK, 您的描述非常清楚,@Jade@Roy 会推动改进。