You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

批量INSERT操作中mysqld内存持续增长问题求助

批量插入MySQL时内存持续增长问题求助

我们有一个脚本,需要从API获取并转换数据后批量插入MySQL,数据量约1000-2000万条。MySQL本应轻松处理这类操作,最初因为脚本用Rust的sqlx编写,我们怀疑是sqlx的问题。为排除这个可能性,我们把插入测试脚本从Rust重写为Java 11(和生产环境版本接近),但内存持续增长的问题依旧存在。

我们已经尝试了多种排查手段:

  • 检查MySQL状态
  • 调整MySQL/InnoDB配置
  • 减小批量插入规模
  • 甚至在Java中不使用预编译语句

但内存仍呈线性增长。批量插入时磁盘占用逐步增加是正常情况,但内存持续增长显然异常,长此以往会导致服务器崩溃。

之前求助时有人推测,InnoDB可能使用了内存映射文件,这个说法看似合理,但我们的内存测量方式存在问题,无法精准确认是否真的存在泄漏。

另外,我们不确定当前的批量插入方式是否正确——目前仅采用固定1000行的批量插入操作。我们试过替代方案:生成执行相同操作的dump文件,用dump文件插入时没有内存问题。

请问有人知道这可能是什么原因导致的吗?


内容的提问来源于stack exchange,提问作者Speykious

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 13:37:33