0
1
2
0
专栏/.../

熟悉TiDB运维管理工具之TiUP(一)

 数据源的TiDB学习之路  发表于  2024-02-28

刚接触TiDB一个月,当前的感受主要有两点:其一是TiDB的文档真的很丰富,光官方文档合起来就有4000多页,如果能把官方文档所有知识点都掌握,那绝对算得上是一个全面的TiDB专家了;其二是TiDB的工具很全面,官方文档有专门关于TiDB工具的一个章节,工具包括部署运维工具TiUP及TiDB Operator(Kubernetes部署)、数据迁入Data Migration(将MySQL/MariaDB迁移到TiDB)、全量导出Dumpling、全量导入Lightning、备份恢复Backup&Restore、增量同步TiCDC及TiDB Binlog、数据校验sync-diff-inspector等。

TiDB的工具确实多,不同的工具也有很多不同的命令、参数还有相应的配置文件。对于一个初学者而言,想要在短时间内完全熟悉这些命令怕是有相当大点难度的。拿笔者个人的学习体会而言,虽然用了一周时间考过了PCTP,但课程中相关工具的原理、命令啥的已经变得模糊不清,所以有必要通过记录的方式来回顾这些知识点。今天我们先通过这篇文章来总结一下TiDB强大的运维管理命令行工具TiUP。

一. TiUP是什么?

简单来说,TiUP是一个TiDB包管理器,管理众多组件如TiDB、PD、TiKV等。当想要运行任何组件时,只需要执行一条TiUP命令即可。

二. TiUP如何安装?

安装TiUP非常简单,如果机器可以访问外网,直接使用以下命令安装即可(如果是离线环境,需要下载TiDB-community-toolkit包)。

curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh

image.png

image.png

该命令将TiUP默认安装在$HOME/.tiup文件夹下,之后安装的组件及组件运行产生的数据也会在该文件夹下。同时,它还会自动将$HOME/.tiup/bin加入到.bash_profile中,如上面截图所示。之后,我们source .bash_profile后便可以使用tiup命令了。

source .bash_profile

image.png

TiUP本身也是有版本的,可以使用tiup –version来查看TiUP的版本号。

tiup --version

image.png

三. TiUP如何使用?

想了解TiUP如何使用,首先可以通过查看TiUP命令行介绍,通过执行tiup –help或直接执行tiup看到帮助信息。

tiup --help

image.png

可以简单把TiUP命令分为两部分来看,即支持哪些命令和支持哪些组件。命令和组件的区别是命令是tiup自带的,而组件需要通过tiup进行安装。

从支持的命令来说,TiUP支持以下命令:

  1. install-用于安装组件
  2. list-用于查看有哪些组件
  3. uninstall-用于卸载组件
  4. update-用于更新组件
  5. status-查看组件运行状态
  6. clean-清除组件运行记录
  7. mirror-克隆一个私有镜像
  8. telemetry-telemetry相关的内容
  9. env-查看tiup相关系统变量
  10. history-查看tiup执行历史命令
  11. link-将组件二进制文件链接到$TIUP_HOME/bin/
  12. unlink-与link相反
  13. help-帮助
  14. completion-生成autocompletion脚本

举个例子,我们可以使用tiup list来查看有哪些组件,进而用tiup list <component-name>来查看具体某个组件的所有版本。

tiup list

image.png

从可用的组件来说,tiup list显示的组件就是当前支持的组件,包括:

  1. PCC-用于捕获不同TiDB版本变更的组件。
  2. bench-用于对数据库进行压力测试的组件。
  3. br-备份恢复组件。
  4. cdc-cdc组件。
  5. chaosd-混沌工程工具。
  6. client-连接playground的客户端。
  7. cloud-管理TiDB Cloud的CLI工具。
  8. cluster-部署用于生产的集群。
  9. ctl-控制器套件。
  10. dm-Data Migration数据迁移平台。
  11. dmctl-DM数据迁移的dmctl组件。
  12. errdoc-TiDB错误文档。
  13. pd-recover-PD的灾难恢复工具。
  14. playground-可安装一个本地试玩的单机TiDB。
  15. tidb-TiDB Server组件。
  16. tidb-dashboard-TiDB dashboard组件。
  17. tidb-lightning-Lightning导入组件。
  18. tikv-br-TiKV集群br组件。
  19. tikv-cdc-TiKV的cdc组件。
  20. tiproxy-基于TiDB的proxy组件。
  21. tiup-tiup包管理器。

四. 关于TiUP组件?

组件是可运行的程序或脚本,通过tiup <component>[:version]运行。如果未指定[:version],表示默认用本地的最新版本,如果本地没有对应版本则自动从镜像服务器下载对应的版本。

五. 关于TiUP镜像?

TiUP所有组件都从镜像下载,镜像仓库包含各个组件的tar包及元信息,TiDB默认使用PingCAP官方镜像库,用户也可以自定义镜像仓库。镜像仓库可以是在线HTTP服务器,也可以是本地文件目录。

tiup mirror show

//在线官方镜像仓库

[tidb@tidb53 ~]$ tiup mirror show

https://tiup-mirrors.pingcap.com

//本地mirror镜像仓库

[tidb@tidb52 ~]$ tiup mirror show

/home/tidb/em-repo

六. TiUP组件管理的常用命令?

以下列出常用的TiUP组件管理命令:

(1)查询组件列表

tiup list:查看当前有哪些组件可以安装

tiup list <component>:查看某个组件有哪些版本可以安装

注:--installed选项表示列出已安装组件;--all 选项显示隐藏组件

(2)安装组件

tiup install <component>:安装指定组件的最新稳定版

tiup install <component>:[version]:安装指定版本的指定组件

(3)升级组件

tiup update –all:升级所有组件

tiup update –self:升级tiup自己到最新版本

tiup update –nightly:升级到nightly版本

tiup update –force:强制升级到最新版本

(4)运行组件

tiup <component>:[version]:启动相应的组件

(5)查看组件运行状态

tiup status

(6)清理组件实例

tiup clean <component>

(7)卸载组件

tiup uninstall <component>:[version]

0
1
2
0

版权声明:本文为 TiDB 社区用户原创文章,遵循 CC BY-NC-SA 4.0 版权协议,转载请附上原文出处链接和本声明。

评论
暂无评论