gpt4 book ai didi

mysql - 索引减慢插入速度(无法使用解释插入来分析)

转载 作者:行者123 更新时间:2023-11-29 13:20:59 30 4
gpt4 key购买 nike

我有一个 mysql 数据库,我正在从日志中解析文件并将其输入其中。到目前为止,在数据库中包含一个简单的 4mb 文件可能需要大约 4 分钟才能插入!我有大约 10,000 个这样的文件需要处理。起初我以为这是我的脚本,但经过进一步挖掘,我了解到这可能与索引有关。我有一个包含 4 列、1 个主键和 2 个外键的表,默认情况下是索引。由此是否可以知道索引是否影响插入性能?我似乎无法使用 mysql 解释插入,所以我不知道需要提供更多信息。我很困惑是否应该删除索引,但我不知道如何不造成灾难。

最佳答案

INSERT 必须更新所有索引。它还必须检查所有外键约束,这需要在其他表的索引中查找。

外键检查可能会减慢您的速度。如果您确定要插入的所有数据都是干净的,则可以在进行批量插入时暂时禁用这些检查:

SET FOREIGN_KEY_CHECKS = 0;
INSERT ...
INSERT ...
...
SET FOREIGN_KEY_CHECKS = 1;

Documentation

关于mysql - 索引减慢插入速度(无法使用解释插入来分析),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20850320/

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