TiFlash 命令行参数
本文介绍了 TiFlash 的命令行启动参数。
server --config-file
- 指定 TiFlash 的配置文件路径
- 默认:""
- 必须指定配置文件,详细的配置项请参阅 TiFlash 配置参数
dttool migrate
迁移 DTFile 的文件格式 (用于测试和原地降级)。数据迁移的单位为单个 DTFile。如果想进行整表迁移,通常需要定位到所有形如
<data dir>/t_<table id>/stable/dmf_<file id>
的路径,逐一进行迁移。可以结合脚本来自动进行这一操作。使用场景:
- 当需要从开启了数据校验功能 (
storage.format_version
>= 3) 的 TiFlash v5.4 及以上版本降级回以前的版本时,可以使用此工具完成数据格式降级。 - 当升级到 TiFlash v5.4 及以上,并希望对存量数据也加上数据校验功能以加固数据检验时,可以使用此工具完成数据格式升级。
- 测试不同配置的 DTFile 空间占用和读取速度。
- 当需要从开启了数据校验功能 (
参数:
--imitative
:当不使用 DTFile 的加密功能时,可以使用本选项避免使用配置文件和连接 PD。--version
:DTFile 的版本,可选值为 1 和 2,默认为 2。1 为传统格式,2 为新版 checksum 对应的 DTFile 格式。--algorithm
:检验哈希算法,可选值为 xxh3,city128,crc32,crc64,none,默认为 xxh3,仅在 version=2 时有用。--frame
:校验帧大小,默认为 1048576,仅在 version=2 时有用。--compression
:目标压缩算法,可选值为 lz4,lz4hc,zstd,none。默认值为 lz4。--level
:目标压缩等级,默认值 -1 (表示自动模式);不同压缩算法取值范围不同。--config-file
:dttool migrate 的配置文件应当与 server 模式下的配置文件保持一致;使用配置文件时,需要退出本地的 TiFlash 服务器实例。见--imitative
选项。--file-id
:对应 DTFile 的 ID,如dmf_123
对应的 ID 是 123。--workdir
:指向dmf_xxx
的父级目录。--dry
:空跑模式,只输出迁移过程。--nokeep
:不保留原数据。不开启该选项时,会产生dmf_xxx.old
文件。
dttool bench
- 提供 DTFile 的简单 IO 速度测试。
- 参数:
--version
:DTFile 的版本,见 dttool migrate 对应参数。--algorithm
:检验哈希算法,见 dttool migrate 对应参数。--frame
:校验帧大小,见 dttool migrate 对应参数。--column
:测试表宽度,默认为 100。--size
:测试表长度,默认为 1000。--field
:测试表字段长度上限,默认为 1024。--random
:随机数种子。如未提供,该值从系统熵池抽取。--encryption
:启用加密功能。--repeat
:性能测试采样次数,默认为 5。--workdir
:临时数据文件夹,应指向需要测试的文件系统下的路径,默认为 /tmp/test。
dttool inspect
检查 DTFile 的完整性。数据校验的单位为单个 DTFile。如果想进行整表校验,通常需要定位到所有形如
<data dir>/t_<table id>/stable/dmf_<file id>
的路径,逐一进行校验。可以结合脚本来自动进行这一操作。使用场景:
- 完成格式升降级后进行完整性检测。
- 将原有数据文件搬迁至新环境后进行完整性检测。
参数:
--config-file
:dttool bench 的配置文件,见 dttool migrate 对应参数。--check
:进行哈希校验。--file-id
:对应 DTFile 的 ID,见 dttool migrate 对应参数。--imitative
:模拟数据库上下文,见 dttool migrate 对应参数。--workdir
:数据文件夹,见 dttool migrate 对应参数。