tikv/tikv-importer本镜像为分布式事务型键值数据库TiKV的专用数据导入工具,旨在提供高效、可靠的批量数据导入能力。通过该工具可将外部数据源(如CSV文件、SQL导出数据等)高效导入TiKV集群,支持大规模数据迁移与初始化,是TiKV生态中数据集成的核心组件之一。
bashdocker run -d \ --name tikv-importer \ -v /host/data:/data `# 挂载本地数据源目录至容器内/data` \ -v /host/config:/config `# 挂载配置文件目录` \ -e TIKV_PD_ADDRESSES="pd-node1:2379,pd-node2:2379" `# TiKV集群PD服务地址(必填)` \ -e DATA_SOURCE_PATH="/data/input.csv" `# 数据源文件路径(容器内路径,必填)` \ -e IMPORT_MODE="append" `# 导入模式:append(追加)/overwrite(覆盖),默认append` \ -e WORKERS=4 `# 并行工作线程数,默认2` \ tikv-importer:latest
bashdocker logs -f tikv-importer
| 环境变量名 | 说明 | 是否必填 | 默认值 |
|---|---|---|---|
TIKV_PD_ADDRESSES | TiKV集群PD服务地址列表,多个地址用逗号分隔(如"pd1:2379,pd2:2379") | 是 | - |
DATA_SOURCE_PATH | 数据源文件路径(容器内绝对路径,如"/data/input.csv") | 是 | - |
IMPORT_MODE | 导入模式:append(追加数据)/overwrite(覆盖现有数据) | 否 | append |
WORKERS | 并行导入线程数,建议设置为CPU核心数的1-2倍 | 否 | 2 |
BATCH_SIZE | 每批导入记录数(单位:条),调整该值可优化内存占用与吞吐量 | 否 | 1000 |
LOG_LEVEL | 日志级别:debug/info/warn/error | 否 | info |
TIMEOUT | 导入超时时间(如"30m"表示30分钟),0表示无超时 | 否 | "60m" |
对于复杂配置场景,可通过配置文件定义详细规则(优先级高于环境变量)。配置文件为TOML格式,示例如下:
toml# /host/config/importer.toml(本地配置文件) [pd] addresses = ["pd-node1:2379", "pd-node2:2379"] # TiKV PD地址列表 timeout = "10s" # PD连接超时时间 [data_source] path = "/data/input.csv" # 数据源路径(容器内路径) format = "csv" # 数据格式:csv/tsv delimiter = "," # 字段分隔符(csv默认",",tsv默认"\t") header = true # 是否包含表头行(用于字段映射) skip_rows = 1 # 跳过开头行数(若header=true,默认跳过1行表头) [import] mode = "overwrite" # 导入模式 workers = 8 # 并行线程数 batch_size = 2000 # 每批记录数 checksum = true # 是否校验导入数据完整性 [log] level = "debug" # 日志级别 file = "/var/log/importer.log" # 日志文件路径(容器内路径,需挂载日志目录)
启动容器时挂载配置文件:
bashdocker run -d \ --name tikv-importer \ -v /host/data:/data \ -v /host/config:/config \ # 本地配置目录挂载至容器/config -v /host/log:/var/log \ # 挂载日志目录(可选) tikv-importer:latest --config /config/importer.toml `# 指定配置文件路径`
通过容器日志或Prometheus指标监控导入进度:
"import progress: X%"(显示当前导入百分比)、"import completed successfully"(导入完成)。9090端口,指标包括tikv_importer_records_total(总导入记录数)、tikv_importer_duration_seconds(导入耗时)等。docker exec -it tikv-importer ping pd-node1测试连通性。overwrite模式时,建议先备份TiKV集群数据,防止误操作覆盖重要数据。chmod 755 /host/data)。

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务