From 0545206108da9f0d6bb64d2a11ec2e73f3114465 Mon Sep 17 00:00:00 2001 From: lance6716 Date: Mon, 27 Sep 2021 13:13:13 +0800 Subject: [PATCH 1/4] Update tidb-lightning-faq.md --- tidb-lightning/tidb-lightning-faq.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/tidb-lightning/tidb-lightning-faq.md b/tidb-lightning/tidb-lightning-faq.md index 248290498fb4..fe73bdf3afa5 100644 --- a/tidb-lightning/tidb-lightning-faq.md +++ b/tidb-lightning/tidb-lightning-faq.md @@ -228,19 +228,21 @@ strict-format = true ## `checksum failed: checksum mismatched remote vs local` -**原因**:本地数据源跟目标数据库某个表的校验和不一致。这通常有更深层的原因: +**原因**:本地数据源跟目标数据库某个表的校验和不一致。这通常有更深层的原因,可以通过检查日志中包含 `checksum mismatched` 的行进一步定位: -1. 这张表可能本身已有数据,影响最终结果。 -2. 如果目标数据库的校验和全是 0,表示没有发生任何导入,有可能是集群太忙无法接收任何数据。 -3. 如果数据源是由机器生成而不是从 Dumpling 备份的,需确保数据符合表的限制,例如: +包含 `checksum mismatched` 的行中有 `total_kvs: x vs y` 的信息,`x` 表示导入集群在完成导入后计算出的键值对(KV pairs)数目,`y` 表示本地数据源产生的键值对数目。 - * 自增 (AUTO_INCREMENT) 的列需要为正数,不能为 0。 - * 唯一键和主键 (UNIQUE and PRIMARY KEYs) 不能有重复的值。 -4. 如果 TiDB Lightning 之前失败停机过,但没有正确重启,可能会因为数据不同步而出现校验和不一致。 +- `x` 大,即导入集群键值对更多: + - 可能这张表在导入前已有数据,因此影响了数据校验。这也包括 TiDB Lightning 之前失败停机过,但没有正确重启。 +- `y` 大,即本地数据源键值对更多 + - 如果目标数据库的校验和全是 0,表示没有发生任何导入,有可能是集群太忙无法接收任何数据。 + - 可能导出数据中包含重复数据,例如唯一键和主键 (UNIQUE and PRIMARY KEYs) 有重复的值、下游表结构为大小写不敏感而数据为大小写敏感。 +- 其他情况 + - 如果数据源是由机器生成而不是从 Dumpling 备份的,需确保数据符合表的限制,例如自增 (AUTO_INCREMENT) 的列需要为正数,不能为 0。 **解决办法**: -1. 使用 `tidb-lightning-ctl` 把出错的表删除,然后重启 TiDB Lightning 重新导入那些表。 +1. 使用 `tidb-lightning-ctl` 把出错的表删除,检查表结构与数据,重启 TiDB Lightning 重新导入那些表。 {{< copyable "shell-regular" >}} From b23d4d30312f3899abfcdc12d90da8b39537a4b7 Mon Sep 17 00:00:00 2001 From: lance6716 Date: Mon, 27 Sep 2021 13:15:03 +0800 Subject: [PATCH 2/4] Update tidb-lightning-faq.md --- tidb-lightning/tidb-lightning-faq.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/tidb-lightning/tidb-lightning-faq.md b/tidb-lightning/tidb-lightning-faq.md index fe73bdf3afa5..4ed09736be05 100644 --- a/tidb-lightning/tidb-lightning-faq.md +++ b/tidb-lightning/tidb-lightning-faq.md @@ -233,12 +233,12 @@ strict-format = true 包含 `checksum mismatched` 的行中有 `total_kvs: x vs y` 的信息,`x` 表示导入集群在完成导入后计算出的键值对(KV pairs)数目,`y` 表示本地数据源产生的键值对数目。 - `x` 大,即导入集群键值对更多: - - 可能这张表在导入前已有数据,因此影响了数据校验。这也包括 TiDB Lightning 之前失败停机过,但没有正确重启。 + - 可能这张表在导入前已有数据,因此影响了数据校验。这也包括 TiDB Lightning 之前失败停机过,但没有正确重启。 - `y` 大,即本地数据源键值对更多 - - 如果目标数据库的校验和全是 0,表示没有发生任何导入,有可能是集群太忙无法接收任何数据。 - - 可能导出数据中包含重复数据,例如唯一键和主键 (UNIQUE and PRIMARY KEYs) 有重复的值、下游表结构为大小写不敏感而数据为大小写敏感。 + - 如果目标数据库的校验和全是 0,表示没有发生任何导入,有可能是集群太忙无法接收任何数据。 + - 可能导出数据中包含重复数据,例如唯一键和主键 (UNIQUE and PRIMARY KEYs) 有重复的值、下游表结构为大小写不敏感而数据为大小写敏感。 - 其他情况 - - 如果数据源是由机器生成而不是从 Dumpling 备份的,需确保数据符合表的限制,例如自增 (AUTO_INCREMENT) 的列需要为正数,不能为 0。 + - 如果数据源是由机器生成而不是从 Dumpling 备份的,需确保数据符合表的限制,例如自增 (AUTO_INCREMENT) 的列需要为正数,不能为 0。 **解决办法**: From 87e2afb60091675b86615cd5e01679c8214df3f0 Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Tue, 2 Nov 2021 10:25:56 +0800 Subject: [PATCH 3/4] Apply suggestions from code review --- tidb-lightning/tidb-lightning-faq.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tidb-lightning/tidb-lightning-faq.md b/tidb-lightning/tidb-lightning-faq.md index 4ed09736be05..71764658889b 100644 --- a/tidb-lightning/tidb-lightning-faq.md +++ b/tidb-lightning/tidb-lightning-faq.md @@ -234,7 +234,7 @@ strict-format = true - `x` 大,即导入集群键值对更多: - 可能这张表在导入前已有数据,因此影响了数据校验。这也包括 TiDB Lightning 之前失败停机过,但没有正确重启。 -- `y` 大,即本地数据源键值对更多 +- `y` 大,即本地数据源键值对更多: - 如果目标数据库的校验和全是 0,表示没有发生任何导入,有可能是集群太忙无法接收任何数据。 - 可能导出数据中包含重复数据,例如唯一键和主键 (UNIQUE and PRIMARY KEYs) 有重复的值、下游表结构为大小写不敏感而数据为大小写敏感。 - 其他情况 @@ -242,7 +242,7 @@ strict-format = true **解决办法**: -1. 使用 `tidb-lightning-ctl` 把出错的表删除,检查表结构与数据,重启 TiDB Lightning 重新导入那些表。 +1. 使用 `tidb-lightning-ctl` 把出错的表删除,检查表结构与数据,重启 TiDB Lightning 重新导入此前出错的表。 {{< copyable "shell-regular" >}} From 509195b65fdf684bf659bd8aa3b79da21ed5ea7f Mon Sep 17 00:00:00 2001 From: xixirangrang Date: Thu, 18 Nov 2021 10:57:17 +0800 Subject: [PATCH 4/4] Update tidb-lightning/tidb-lightning-faq.md --- tidb-lightning/tidb-lightning-faq.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tidb-lightning/tidb-lightning-faq.md b/tidb-lightning/tidb-lightning-faq.md index 71764658889b..6857bfc5da6e 100644 --- a/tidb-lightning/tidb-lightning-faq.md +++ b/tidb-lightning/tidb-lightning-faq.md @@ -228,7 +228,7 @@ strict-format = true ## `checksum failed: checksum mismatched remote vs local` -**原因**:本地数据源跟目标数据库某个表的校验和不一致。这通常有更深层的原因,可以通过检查日志中包含 `checksum mismatched` 的行进一步定位: +**原因**:本地数据源跟目标数据库某个表的校验和不一致。这通常有更深层的原因,可以通过检查日志中包含 `checksum mismatched` 的行进一步定位。 包含 `checksum mismatched` 的行中有 `total_kvs: x vs y` 的信息,`x` 表示导入集群在完成导入后计算出的键值对(KV pairs)数目,`y` 表示本地数据源产生的键值对数目。