gpt4 book ai didi

mysql - 尽管我使用 REPLACE INTO,但出现重复记录错误

转载 作者:行者123 更新时间:2023-11-29 12:03:51 24 4
gpt4 key购买 nike

每天晚上我们都在做

LOAD DATA LOCAL INFILE '$path' 
REPLACE INTO TABLE $table
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
($fields)

位于 $path 中的文件中的记录将根据 $table 中的键有一些重复记录,这就是我们执行 REPLACE INTO 而不是 INSERT INTO 的原因。

这个策略多年来一直毫无错误地工作,直到昨晚出现了一些问题,并且在日志中发现了以下错误:

发生 mySQL 错误:225811872 处记录的键与 88773156 处记录的键重复。 错误查询:ALTER TABLE remp ENABLE KEYS。

如果这很重要,那么该表可能有史以来第一次增长到超过 2 亿行(14.9 GiB)。此外,该表被划分为约 40 个分区。

从这一刻起,有关表上的任何进一步的 SELECT 语句都会导致:

发生 mySQL 错误:表“./azuondb/remp#P#p1”被标记为已崩溃且上次(自动?)修复失败

一个简单的(手动!)修复表有所帮助,但在我执行此操作之前,该表处于“使用中”且无法访问,从而严重影响了我们提供的服务。

有人知道导致此错误的原因以及如何帮助防止将来发生此错误吗?

最佳答案

同时执行多个操作时,MyISAM 表有时会崩溃。在大多数情况下,简单的修复即可解决问题,但如果表继续这样做 - 您应该确定问题的根源是什么。

请引用docs还有这个similar question at dba .

关于mysql - 尽管我使用 REPLACE INTO,但出现重复记录错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31904738/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com