gpt4 book ai didi

php - 使用 LOAD DATA LOCAL INFILE 加载 csv 文件到 MySQL 时如何限制 CPU 负载?

转载 作者:太空宇宙 更新时间:2023-11-03 10:44:21 25 4
gpt4 key购买 nike

我在 php 脚本中使用 LOAD DATA LOCAL INFILE,这样用户就可以将 csv 文件加载到 MySQL 中(所有数据都已预转义),这既好又快,但是当脚本这样做时,它会刺激我的在该过程发生时 CPU 负载达到 100% - 有时长达 2-3 分钟。

csv 文件最多 5000 行。

我认为部分问题是该表现在有 3000 万多行,因此重新索引使问题更加复杂。

有没有办法通过php脚本告诉MySQL限制负载?

感谢您的关注。

最佳答案

在基于 Linux 的服务器上,您可以使用 PHP 的 proc_nice()降低优先级的功能,尽管有一些限制:

proc_nice(10);

根据运行脚本的环境,您可能需要在脚本结束时使用 proc_nice(0); 将优先级设置回正常,以避免 PHP 卡在低优先级。

一个更简单和更少麻烦的方法可能是简单地添加一个 sleep()在每个循环结束时执行命令,以便处理器有机会执行其他任务:

sleep(1);

关于php - 使用 LOAD DATA LOCAL INFILE 加载 csv 文件到 MySQL 时如何限制 CPU 负载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33887251/

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