功能介绍
最近更新时间: 2024-10-17 17:10:00
支持单表(Noshard表),广播表(global表),分表(groupshard表),二级分区表(subshard表)以及range/list全局分区表的导入。
支持进度条显示,包括实时导入记录数,总进度百分比,实时导入速率,耗时等。
支持命令行导入(类似
--ip=127.0.0.1
)和文件参数导入(配置文件load.ini)
。支持自定义导入线程,分割块(chunk_size)大小等参数。
支持导入部分字段,使用
--fields ="(id,k,@jump,pad)"
参数跳过第三列数据只导入3个字段,或者--fields ="(id,k)"
导入两个字段。支持参数设定日志等级,当日志等级设置为debug时(
--log_level=2
)可以查看详细的报错信息,定位到具体的行。报错或者报警告的子文本默认保存在./tmp_error
或者./tmp_warning
目录下。- 可以通过设置参数
--tmp_file_path
,--log_file_path
控制临时文件和日志存储目录,例如设置了一下参数后,如果存在历史文件,就可以在…/loaddata/tmp/
目录下,发现tmp_error
或者tmp_warning
目录;…/loaddata/log/
目录下发现日志。
- 可以通过设置参数
# ./load_data --ip=127.0.0.1 --password="test" --user=test --port=15006 --file=/data/file.txt --log_level=2 --log_file_path="./log" --tmp_file_path="./tmp" --field_enclosed="\""
支持后台运行,通过设置
--is_daemon=true
开启后台模式,开启后可通过信号量(kill -s SIGUSR1 pid
)的方式获得实时的导入进度。同时log日志每隔5min打印进度。支持执行前置sql,通过参数
--prefix_sqls
能在导入前执行sql,对于设置net_read
或者write_timeout
等参数也可以在此后追加,以分号隔开每个sql。目前默认运行以下指令:
"SET unique_checks = 0; SET foreign_key_checks = 0;SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED"
支持文件夹导入
支持位置参数
支持自动重试
支持断点续传
支持设定出错时是退出线程还是继续执行其他range导入
支持参数开启文件列数与字段数检查功能
支持密码加密,例如运行
./load_data --password=test --encrypt_pwd
会使用默认密钥将密码test加密,返回加密后的密码密文。同时支持指定加密密钥encrypt_secret_key
。支持使用加密密码进行导入,例如导入时password设置为密文,则指定
use_encrypt_pwd=1
后可以顺利导入。同时支持指定解密密钥encrypt_secret_key
。