TiDB 数据库快速上手指南

    本文介绍如何快速上手体验 TiDB 分布式数据库。有以下 2 种体验方式供用户选择。

    • 适用场景:利用本地 Mac 或者单机 Linux 环境快速部署 TiDB 集群。可以体验 TiDB 集群的基本架构,以及 TiDB、TiKV、PD、监控等基础组件的运行。
    • 耗时:1 分钟

    作为一个分布式系统,最基础的 TiDB 测试集群通常由 2 个 TiDB 实例、3 个 TiKV 实例、3 个 PD 实例和可选的 TiFlash 实例构成。通过 TiUP Playground,可以快速搭建出上述的一套基础测试集群。

    1. 下载并安装 TiUP。

    2. 声明全局环境变量。

    3. 在当前 session 执行以下命令启动集群。

      • 直接运行 tiup playground 命令会运行最新版本的 TiDB 集群,其中 TiDB、TiKV、PD 和 TiFlash 实例各 1 个:

        1. tiup playground
      • 也可以指定 TiDB 版本以及各组件实例个数,命令类似于:

        1. tiup playground v4.0.11 --db 2 --pd 3 --kv 3 --monitor

        上述命令会在本地下载并启动某个版本的集群(例如 v4.0.11),--monitor 表示同时部署监控组件。最新版本可以通过执行 tiup list tidb 来查看。运行结果将显示集群的访问方式:

        1. CLUSTER START SUCCESSFULLY, Enjoy it ^-^
        2. To connect TiDB: mysql --host 127.0.0.1 --port 4000 -u root
        3. To connect TiDB: mysql --host 127.0.0.1 --port 4001 -u root
        4. To view the dashboard: http://127.0.0.1:2379/dashboard
        5. To view the monitor: http://127.0.0.1:9090
    4. 新开启一个 session 以访问 TiDB 数据库。

      • 使用 TiUP client 连接 TiDB:

      • 也可使用 MySQL 客户端连接 TiDB:

    5. 通过 访问 TiDB 的 Prometheus 管理界面。

    6. 通过 http://127.0.0.1:2379/dashboard 访问 页面,默认用户名为 root,密码为空。

      1. 通过 ctrl + c 停掉进程

      2. 执行以下命令:

        1. tiup clean --all
    • 适用场景:希望用单台 Linux 服务器,体验 TiDB 最小的完整拓扑的集群,并模拟生产的部署步骤。
    • 耗时:10 分钟

    本节介绍如何参照 TiUP 最小拓扑的一个 YAML 文件部署 TiDB 集群。

    准备一台部署主机,确保其软件满足需求:

    • 推荐安装 CentOS 7.3 及以上版本
    • Linux 操作系统开放外网访问,用于下载 TiDB 及相关软件安装包

    最小规模的 TiDB 集群拓扑:

    部署主机软件和环境要求:

    • 部署需要使用部署主机的 root 用户及密码
    • 部署主机关闭防火墙或者开放 TiDB 集群的节点间所需端口
    • 目前 TiUP 仅支持在 x86_64 (AMD64) 架构上部署 TiDB 集群(TiUP 将在 4.0 GA 时支持在 ARM 架构上部署)
      • 在 AMD64 架构下,建议使用 CentOS 7.3 及以上版本 Linux 操作系统
      • 在 ARM 架构下,建议使用 CentOS 7.6 1810 版本 Linux 操作系统

    实施部署

    1. 下载并安装 TiUP:

      1. curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
    2. 安装 TiUP 的 cluster 组件:

      1. tiup cluster
    3. 如果机器已经安装 TiUP cluster,需要更新软件版本:

      1. tiup update --self && tiup update cluster
    4. 由于模拟多机部署,需要通过 root 用户调大 sshd 服务的连接数限制:

      1. 修改 /etc/ssh/sshd_configMaxSessions 调至 20。
      2. 重启 sshd 服务:

        1. service sshd restart
    5. 创建并启动集群

      按下面的配置模板,编辑配置文件,命名为 topo.yaml,其中:

      • :表示通过 tidb 系统用户(部署会自动创建)来做集群的内部管理,默认使用 22 端口通过 ssh 登录目标机器
      • replication.enable-placement-rules:设置这个 PD 参数来确保 TiFlash 正常运行
      • 配置模板如下:

    6. 执行集群部署命令:

        • 参数 <cluster-name> 表示设置集群名称
        • 参数 <tidb-version> 表示设置集群版本,可以通过 tiup list tidb 命令来查看当前支持部署的 TiDB 版本

          按照引导,输入”y”及 root 密码,来完成部署:

          1. Do you want to continue? [y/N]: y
          2. Input SSH password:
      1. 启动集群:

        1. tiup cluster start <cluster-name>
      2. 访问集群:

        • 安装 MySQL 客户端。如果已安装 MySQL 客户端则可跳过这一步骤。

          1. yum -y install mysql
        • 访问 TiDB 数据库,密码为空:

        • 访问 TiDB 的 Grafana 监控:

          通过 访问集群 Grafana 监控页面,默认用户名和密码均为 admin。

        • 访问 TiDB 的 Dashboard:

          通过 http://{pd-ip}:2379/dashboard 访问集群 监控页面,默认用户名为 root,密码为空。

        • 执行以下命令确认当前已经部署的集群列表:

        • 执行以下命令查看集群的拓扑结构和状态:

          1. tiup cluster display <cluster-name>