Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion TOC.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,8 +74,10 @@
+ Migrate
- [Migration Tools User Guide](/ecosystem-tool-user-guide.md)
+ Migrate from MySQL
- [Migrate from Mydumper Files](/migrate-from-mysql-mydumper-files.md)
- [Migration Case of Amazon Aurora](/migrate-from-aurora-mysql-database.md)
- [Migrate from CSV](/tidb-lightning/migrate-from-csv-using-tidb-lightning.md)
- [Migrate from CSV Files](/tidb-lightning/migrate-from-csv-using-tidb-lightning.md)
- [Migrate from SQL Files](/migrate-from-mysql-mydumper-files.md)
+ Maintain
- [Common Ansible Operations](/maintain-tidb-using-ansible.md)
+ Backup and Restore
Expand Down
64 changes: 64 additions & 0 deletions migrate-from-mysql-mydumper-files.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
---
title: Migrate Data from MySQL SQL Files
summary: Learn how to migrate data from MySQL SQL files to TiDB using TiDB Lightning.
category: how-to
---

# Migrate Data from MySQL SQL Files

This document describes how to migrate data from MySQL SQL files to TiDB using TiDB Lightning. For details on how to generate MySQL SQL files, refer to [Mydumper](/mydumper-overview.md) or [Dumpling](/export-or-backup-using-dumpling.md).

The data migration process described in this document uses TiDB Lightning. The steps are as follows.

## Step 1: Deploy TiDB Lightning

Before you start the migration, [deploy TiDB Lightning](/tidb-lightning/deploy-tidb-lightning.md).

> **Note:**
>
> - If you choose the Importer-backend to import data, you need to deploy `tikv-importer` along with TiDB Lightning. During the import process, the TiDB cluster cannot provide services. This mode imports data quickly, which is suitable for importing a large amount of data (above the TB level).
> - If you choose the TiDB-backend, deploy TiDB Lightning only. The cluster can provide services normally during the import.
> - For detailed differences between the two backend mode, see [TiDB Lightning Backend](/tidb-lightning/tidb-lightning-tidb-backend.md).

## Step 2: Configure data source of TiDB Lightning

This document takes the TiDB-backend as an example. Create the `tidb-lightning.toml` configuration file and add the following major configurations in the file:

1. Set the `data-source-dir` under `[mydumper]` to the path of the MySQL SQL file.

```
[mydumper]
# Data source directory
data-source-dir = "/data/export"
```

> **Note:**
>
> If a corresponding schema already exists in the downstream, set `no-schema=true` to skip the creation of the schema.

2. Add the configuration of the target TiDB cluster.

```
[tidb]
# The target cluster information. Fill in one address of tidb-server.
host = "172.16.31.1"
port = 4000
user = "root"
password = ""
```

For other configurations, see [TiDB Lightning Configuration](/tidb-lightning/tidb-lightning-configuration.md).

## Step 3: Run TiDB Lightning to import data

Run TiDB Lightning to start the import operation. If you start TiDB Lightning by using `nohup` directly in the command line, the program might exit because of the `SIGHUP` signal. Therefore, it is recommended to write `nohup` in a script. For example:

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

When the import operation is started, view the progress by the following two ways:

- `grep` the keyword `progress` in logs, which is updated every 5 minutes by default.
- Access the monitoring dashboard. See [Monitor TiDB Lightning](/tidb-lightning/monitor-tidb-lightning.md) for details.
2 changes: 1 addition & 1 deletion mydumper-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ aliases: ['/docs/v3.1/reference/tools/mydumper/']

## What is Mydumper?

[Mydumper](https://github.com/pingcap/mydumper) is a fork project optimized for TiDB. You can use this tool for logical backups of TiDB.
[Mydumper](https://github.com/pingcap/mydumper) is a fork project optimized for TiDB. You can use this tool for logical backups of **MySQL** or **TiDB**.

It can be [downloaded](/download-ecosystem-tools.md) as part of the Enterprise Tools package.

Expand Down