从6.1.1升级到8.5.0建议

【 TiDB 使用环境】生产环境
【 TiDB 版本】6.1.1
从6.1.1升级到8.5.0应该怎么升级呢?比如先升级版本有什么要求。

升级方案选择

可参考:专栏 - TiDB 升级方案选择 | TiDB 社区

升级工具介绍&FAQ

  1. TiUP

在物理机或虚拟机上的 TiDB 包管理器,管理着 TiDB 的众多的组件,如 TiDB、PD、TiKV 等。当你想要运行 TiDB 生态中任何组件时,只需要执行一行 TiUP 命令即可(TiDB v4.0 起)。

TiUP 文档介绍:https://docs.pingcap.com/zh/tidb/stable/tiup-overview

TiUP FAQ:https://docs.pingcap.com/zh/tidb/stable/tiup-faq

  1. Dumpling

数据导出工具,可以把存储在 TiDB 或 MySQL 中的数据导出为 SQL 或 CSV 格式,用于逻辑全量备份。Dumpling 也支持将数据导出到 Amazon S3 中。

Dumpling 文档介绍:https://docs.pingcap.com/zh/tidb/stable/dumpling-overview

  1. Lightning

数据导入工具,用于从静态文件导入 TB 级数据到 TiDB 集群的工具,常用于 TiDB 集群的初始化数据导入。

Lighting 文档介绍:https://docs.pingcap.com/zh/tidb/stable/tidb-lightning-overview

导入(新)数据库要求:https://docs.pingcap.com/zh/tidb/stable/tidb-lightning-requirements

Lightning 常见故障处理:https://docs.pingcap.com/zh/tidb/stable/troubleshoot-tidb-lightning

  1. TiCDC

增量数据同步工具,通过拉取 TiKV 变更日志实现的 TiDB 增量数据同步。TiCDC 典型的应用场景为搭建多套 TiDB 集群间的主从复制,或者配合其他异构的系统搭建数据集成服务。

TiCDC 文档介绍:https://docs.pingcap.com/zh/tidb/stable/ticdc-overview

TiCDC 常见故障和解决方案:https://docs.pingcap.com/zh/tidb/stable/troubleshoot-ticdc

升级前应做哪些准备?

  1. 升级前必看文档

  1. 了解系统的健康状况

  2. 确认集群拓扑结构是否满足高可用需求

  3. 集群拓扑是否健康

  4. 硬件配置是否达标

  5. 集群使用情况

  6. 集群数据量

  7. 大表情况

  8. 表宽度,字段数量

  9. SQL 语句 DDL\DML 执行情况 QPS

  10. 字符集等兼容情况

升级常见问题

(1)滚动升级有那些影响?

滚动升级 TiDB 期间,业务运行会受到一定影响。因此,不建议在业务高峰期进行滚动升级。需要配置最小集群拓扑 (TiDB * 2、PD * 3、TiKV * 3),如果集群环境中有 Pump 和 Drainer 服务,建议先停止 Drainer,然后滚动升级(升级 TiDB 时会升级 Pump)。

(2)集群在执行 DDL 请求期间可以进行升级操作吗?

  • 如果升级前 TiDB 的版本低于 v7.1.0:
    • 集群中有 DDL 语句正在被执行时(通常为 ADD INDEX 和列类型变更等耗时较久的 DDL 语句),请勿进行升级操作。在升级前,建议使用 ADMIN SHOW DDL 命令查看集群中是否有正在进行的 DDL Job。如需升级,请等待 DDL 执行完成或使用 ADMIN CANCEL DDL 命令取消该 DDL Job 后再进行升级。
    • 在升级 TiDB 集群的过程中,请勿执行 DDL 语句,否则可能会出现行为未定义的问题。
  • 如果升级前 TiDB 的版本为 v7.1.0 或更高的版本:
    • 不用遵循限制低版本升级时的限制,即在升级时可以接收用户 DDL 任务。建议参考平滑升级 TiDB

8.5是不是 不支持centos7了?
如果是centos7,想升级到8.5.相当于新部署 加数据迁移吗?

1 要是稳定建议还是别升级
2 要是升级看官方文档 先升级到6版本的最后一个版本在升级7 在升级8 ,没法一下升级到位
3 也可以用高版本的BR备份 然后新建一个8版本的Tidb还原回去
4 需要注意8版本不支持centos了 你看操作系统能行吗

1 个赞

我们是使用docker部署的,不用考虑操作系统问题

感谢分享!大佬

1 个赞

如果是centos7,建议先等等,后面的版本会开始兼容centos7,目前是不兼容的

1 个赞

v8.5.1 会支持

1 个赞

个人建议,先做一下恢复演练在直接在线上直接操作哦

经过两个环境的tidb升级测试版本路线:v6.5.11 → v7.1.0 → v7.5.5 → v8.1.0 → v8.5.0,tidb-operator是从v1.3.1-> v1.5.4

:+1:这个路线感觉应该是可以的。

:100:

建议大升级之前,确保对所有重要数据进行了完整的备份

1 个赞

业务要是稳定没问题,上级无要求升什么级,新版本新的bug、新的问题