Skip to content

Commit

Permalink
lightning: update get started doc (#12059) (#15744)
Browse files Browse the repository at this point in the history
  • Loading branch information
ti-chi-bot authored Dec 14, 2023
1 parent 3d02d37 commit 92778e7
Showing 1 changed file with 43 additions and 29 deletions.
72 changes: 43 additions & 29 deletions get-started-with-tidb-lightning.md
Original file line number Diff line number Diff line change
@@ -1,53 +1,69 @@
---
title: TiDB Lightning 教程
title: TiDB Lightning 快速上手
---

# TiDB Lightning 快速上手

本教程假设使用的是若干新的、纯净版 CentOS 7 实例,你可以(使用 VMware、VirtualBox 及其他工具)在本地虚拟化或在供应商提供的平台上部署一台小型的云虚拟主机。因为 TiDB Lightning 对计算机资源消耗较高,建议分配 16 GB 以上的内存以及 32 核以上的 CPU 以获取最佳性能
本文档介绍如何快速上手 TiDB Lightning,将 MySQL 数据导入到 TiDB 集群中

> **警告:**
>
> 本教程中的部署方法只适用于测试及功能体验,并不适用于生产或开发环境。
## 准备全量备份数据
## 第 1 步:准备全量备份数据

我们使用 [`dumpling`](/dumpling-overview.md) 从 MySQL 导出数据,如下:
你可以使用 [Dumpling](/dumpling-overview.md) 从 MySQL 导出数据

{{< copyable "shell-regular" >}}
1. 运行 `tiup --version` 检查是否已安装 TiUP。如果已经安装 TiUP,跳过这一步。如果没有安装 TiUP,运行以下命令:

```sh
tiup dumpling -h 127.0.0.1 -P 3306 -u root -t 16 -F 256MB -B test -f 'test.t[12]' -o /data/my_database/
```
```
curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh
```
其中
2. 使用 TiUP 安装 Dumpling
- `-B test`:从 `test` 数据库导出。
- `-f test.t[12]`:只导出 `test.t1``test.t2` 这两个表。
- `-t 16`:使用 16 个线程导出数据。
- `-F 256MB`:将每张表切分成多个文件,每个文件大小约为 256 MB。
```shell
tiup install dumpling
```
这样全量备份数据就导出到了 `/data/my_database` 目录中。
3. 从 MySQL 导出数据,详细步骤可参考[使用 Dumpling 导出数据](/dumpling-overview.md#导出为-sql-文件):
## 部署 TiDB Lightning
```sh
tiup dumpling -h 127.0.0.1 -P 3306 -u root -t 16 -F 256MB -B test -f 'test.t[12]' -o /data/my_database/
```
### 第 1 步:部署 TiDB 集群
其中:
在开始数据导入之前,需先部署一套要进行导入的 TiDB 集群。本教程以 TiDB v5.4.0 版本为例,具体部署方法可参考[使用 TiUP 部署 TiDB 集群](/production-deployment-using-tiup.md)
- `-t 16`:使用 16 个线程导出数据。
- `-F 256MB`:将每张表切分成多个文件,每个文件大小约为 256 MB。
- `-B test`:从 `test` 数据库导出。
- `-f 'test.t[12]'`:只导出 `test.t1` 和 `test.t2` 这两个表。
### 第 2 步:下载 TiDB Lightning 安装包
导出的全量备份数据将保存在 `/data/my_database` 目录中。
TiDB Lightning 的安装包位于 TiDB 离线工具包中。下载方式,请参考 [TiDB 工具下载](/download-ecosystem-tools.md)
## 第 2 步:部署 TiDB 集群
### 第 3 步:启动 `tidb-lightning`
在开始导入数据之前,你需要先部署一个要进行导入的 TiDB 集群。如果你已经有 TiDB 集群,可以跳过这一步。
1. 将安装包里的 `bin/tidb-lightning``bin/tidb-lightning-ctl` 上传至部署 TiDB Lightning 的服务器
关于部署 TiDB 集群的步骤,请参考 [TiDB 数据库快速上手指南](/quick-start-with-tidb.md)
2. 将数据源也上传到同样的服务器。
## 第 3 步:安装 TiDB Lightning
3. 配置 `tidb-lightning.toml`
运行如下命令,安装 TiDB Lightning 的最新版本:
```
```shell
tiup install tidb-lightning
```

## 第 4 步:启动 TiDB Lightning

> **注意:**
>
> 本节的导入方法只适用于测试及功能体验,生产环境请参考[从大数据量 MySQL 迁移数据到 TiDB](/migrate-large-mysql-to-tidb.md#第-2-步导入全量数据到-tidb)
1. 创建配置文件 `tidb-lightning.toml`,并根据你的集群信息填写如下配置:

```toml
[lightning]
# 日志
level = "info"
Expand Down Expand Up @@ -78,16 +94,14 @@ TiDB Lightning 的安装包位于 TiDB 离线工具包中。下载方式,请
pd-addr = "172.16.31.3:2379"
```

4. 配置合适的参数运行 `tidb-lightning`。如果直接在命令行中用 `nohup` 启动程序,可能会因为 SIGHUP 信号而退出,建议把 `nohup` 放到脚本里面,如:
{{< copyable "shell-regular" >}}
2. 运行 `tidb-lightning`。为避免直接在命令行使用 `nohup` 启动程序时因 `SIGHUP` 信号导致的程序退出,建议将 `nohup` 命令放入脚本中。示例如下:

```sh
```shell
#!/bin/bash
nohup tiup tidb-lightning -config tidb-lightning.toml > nohup.out &
```

### 第 4 步:检查数据
### 第 5 步:检查数据

导入完毕后,TiDB Lightning 会自动退出。若导入成功,日志的最后一行会显示 `tidb lightning exit`。

Expand Down

0 comments on commit 92778e7

Please sign in to comment.