gpt4 book ai didi

mysql - 使用 Laravel 处理大型数据库的最佳方式

转载 作者:可可西里 更新时间:2023-11-01 08:06:03 25 4
gpt4 key购买 nike

数据库

我正在使用一个包含相当大表的数据库,这给我带来了问题。特别是有超过 120k 行。

我在用它做什么

我在 MakeAverage.php 文件中遍历此表,将它们合并到我数据库中新表中的大约 1k 行中。

什么不起作用

即使我尝试 DB::disableQueryLog()take(1000) 限制,Laravel 也不允许我一次处理所有内容.即使启用了我的错误报告(有点像 this ),它每次都会返回一个空白页面。另外,我没有为此的 Laravel 日志文件。我不得不查看我的 php_error.log(我正在使用 MAMP)以意识到它实际上是一个 memory_limit 问题。

我做了什么

我在执行代码之前使用 ini_set('memory_limit', '512M') 增加了内存量。 (这是不好的做法,我应该在 php.ini 中这样做。)

发生了什么?

成功了!然而,Laravel 抛出了一个错误,因为由于数据量很大,页面在 30 秒后没有完成加载。

最佳答案

我会做什么

在这个问题上花了一些时间并查看了其他有类似问题的人(参见:Laravel forum194535951877551012443321),我认为也许 PHP 不是解决方案。

因为,我只是根据 Table A 的平均值创建一个 Table B,我相信 SQL 将最适合我的需求,因为它是对于这种类型的操作(参见:6449072),我明显比 PHP 快,而且我可以使用诸如 SUMAVERAGECOUNTGROUP_BY(Reference)。

关于mysql - 使用 Laravel 处理大型数据库的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19715126/

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