从 SQL 文件迁移数据到 TiDB,目前数据已从MySQL导出为SQL文件
使用 TiUP 安装 TiDB Lightning:
编写包含 DDL 语句的 SQL 文件:
文件名格式为 ${db_name}-schema-create.sql,其内容需包含 CREATE DATABASE 语句。
文件名格式为 ${db_name}.${table_name}-schema.sql,其内容需包含 CREATE TABLE 语句。
[lightning]
# 日志
level = "info"
file = "tidb-lightning.log"
[tikv-importer]
# "local":默认使用该模式,适用于 TiB 级以上大数据量,但导入期间下游 TiDB 无法对外提供服务。
backend = "local"
# # "tidb":TiB 级以下数据量也可以采用 `tidb` 后端模式,下游 TiDB 可正常提供服务。关于后端模式更多信息请参考 https://docs.pingcap.com/zh/tidb/stable/tidb-lightning-backends 。
# 设置排序的键值对的临时存放地址,目标路径必须是一个空目录,目录空间须大于待导入数据集的大小。建议设为与 `data-source-dir` 不同的磁盘目录并使用闪存介质,独占 I/O 会获得更好的导入性能。
sorted-kv-dir = "${sorted-kv-dir}"
[mydumper]
# 源数据目录
data-source-dir = "${data-path}" # 本地或 S3 路径,例如:'s3://my-bucket/sql-backup'
[tidb]
# 目标集群的信息
host = ${host} # 例如:172.16.32.1
port = ${port} # 例如:4000
user = "${user_name}" # 例如:"root"
password = "${password}" # 例如:"rootroot"
status-port = ${status-port} # 导入过程 Lightning 需要在从 TiDB 的“状态端口”获取表结构信息,例如:10080
pd-addr = "${ip}:${port}" # 集群 PD 的地址,Lightning 通过 PD 获取部分信息,例如 172.16.31.3:2379。当 backend = "local" 时 status-port 和 pd-addr 必须正确填写,否则导入将出现异常。