<分区>
我正在做一个项目,我需要从数据库中获取数百万行并制作一个 CSV 文件,但是当我尝试进行查询以获取所有行时,内存使用量增长如此之快并且应用程序达到128M内存使用限制。 我尝试使用 limit 和 offset 对数据库行进行分页,但这并没有太大帮助。这个问题有解决办法吗?
标签 php mysql csv memory-leaks
<分区>
我正在做一个项目,我需要从数据库中获取数百万行并制作一个 CSV 文件,但是当我尝试进行查询以获取所有行时,内存使用量增长如此之快并且应用程序达到128M内存使用限制。 我尝试使用 limit 和 offset 对数据库行进行分页,但这并没有太大帮助。这个问题有解决办法吗?
最佳答案
如果数据库位于您运行此导出脚本的同一个物理盒子上,则:
SELECT <field list>
FROM <table>
INTO OUTFILE '/tmp/<filename>.csv'
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
关于php - 当我们在数据库中有数百万行时,制作 CSV 的最佳方法是什么 - PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26361886/