将BIG mysql表导出为JSON

时间:2015-06-26 11:10:00

标签: php mysql json

我有一个包含280万条记录的mysql表,我想将所有这些转换为JSON。我写了一个脚本来转换,但它停止了内存警告。

然后我尝试创建较小的文件(file1为0,  到100000条记录,文件2是100000到1000000条记录等)并与windows copy命令结合使用。它工作,但每个文件都是一个JSON数组(如[{...}]),当它合并时,它会变成单独的部分,如[{}] [{}](我希望它像[{.... ............}])

有没有更好的解决方案呢?

2 个答案:

答案 0 :(得分:0)

我建议你在php.ini配置中更改'memory_limit'。此外,如果这需要很长时间,那么你可以通过cron job(如果可能的话)来处理这个问题

OR

您可以解码所有json文件并将其合并到一个数组中,然后再次在json中编码并放入json文件中。

答案 1 :(得分:0)

最后我这样做了。请看步骤(我不确定这是正确的,但它确实有效)。

总的来说,我的桌子上有260万条记录。我创建了一个脚本,它将选择mysql行,转换为json并写入文件。

选择0到100万的记录并创建文件1.对文件2和文件3重复1到2百万和2到260万。

使用JQ(http://stedolan.github.io/jq/)合并这些文件并创建一个JSON文件。

相关问题