Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获得超过50000个结果会使Laravel 5.8上的服务器崩溃_Php_Mysql_Json_Laravel - Fatal编程技术网

Php 获得超过50000个结果会使Laravel 5.8上的服务器崩溃

Php 获得超过50000个结果会使Laravel 5.8上的服务器崩溃,php,mysql,json,laravel,Php,Mysql,Json,Laravel,我正试图从Laravel的数据库中获得400000个结果。我的问题是服务器给了我一个500错误代码,但没有生成日志文件。 当我对我的查询设置一个限制时,它是有效的,但限制在20000左右。 可能是php ini文件,但我将其配置为: max_execition_time : -1 max_input_time : -1 max_input_vars: -1 memory_limit: -1 post_max_Size: -1 虽然Laravel给出了500个错误代码,但服务器没有给出错误。我需

我正试图从Laravel的数据库中获得400000个结果。我的问题是服务器给了我一个500错误代码,但没有生成日志文件。
当我对我的查询设置一个限制时,它是有效的,但限制在20000左右。
可能是php ini文件,但我将其配置为:

max_execition_time : -1
max_input_time : -1
max_input_vars: -1
memory_limit: -1
post_max_Size: -1
虽然Laravel给出了500个错误代码,但服务器没有给出错误。我需要40万个结果

(摘自评论中的OP): 代码只是按日期时间获取所有表的顺序

感谢您的帮助

查看以下内容:

使用
chunk
批量获取记录,并将其批量插入:

Model::orderBy('id'))
->选择(['col1','col2',…]))
->块(100,函数($records){
//在此处创建阵列:
$inserted_数组=[];
foreach($记录为$记录){
$inserted_attr=[];
$inserted_attr['column1']=$record->col1;
$inserted_attr['column2']=$record->col2;
...
$inserted_array[]=$inserted_attr;
}
//一次插入100条记录。
历史记录::插入($inserted_数组);
});

不要一次加载400.000条记录,这样做的原因可能是什么?你能把代码贴出来吗?为什么你需要这个?不要这样做。“用paginate,伙计。”大卫维克托里阿马丁内斯我建议你仔细阅读我的答案。不要一次用400'00做某事。一步一步地做,你就不会有任何问题。@DavidVictoriaMartinez我的意思是,如果你有100000条记录,你可以从数据库中获得1000条,然后他们创建你的历史记录表,然后再获得1000条记录,然后插入它们……即使你应该加载所有历史数据,也没有人会一次读取400.000条记录。您应该对此使用分页。