我在CakePHP中有一个控制台应用程序,它从MySQL数据库中选择大约2000条记录。当我启动这个应用程序时,它会在大约30秒后被系统杀死。
代码:
$id = 404;
$options = array( 'conditions' => array( 'Tablex' => $id ) );
$tablexs = $this->Tablex->find('all', $options);
如果我在我的数据库管理器中选择,或者我在普通的PHP脚本中执行此操作,它可以正常工作(并且非常快)。
SELECT * FROM tablexs WHERE id = 404
以下是我在线服务器上的php.ini的一部分。
然而,在我的计算机上本地运行一个带有MySQL&的Apache服务器。 PHP和当我在本地运行我的CakePHP控制台应用程序时它工作正常,我只有;我的电脑上的php.ini文件中的memory_limit = 128M。
就像我上面写的那样,在普通的PHP控制台应用程序中运行相同的查询没有问题。
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
; Maximum execution time of each script, in seconds
;
; Note: This directive is hardcoded to 0 for the CLI SAPI
max_execution_time = 300
; Maximum amount of time each script may spend parsing request data. It's a good
; idea to limit this time on productions servers in order to eliminate unexpectedly
; long running scripts.
; Note: This directive is hardcoded to -1 for the CLI SAPI
; Default Value: -1 (Unlimited)
; Development Value: 60 (60 seconds)
; Production Value: 60 (60 seconds)
;
max_input_time = 600
; Maximum input variable nesting level
;
;max_input_nesting_level = 64
; Maximum amount of memory a script may consume (128MB)
; http://php.net/memory-limit
memory_limit = 512M
答案 0 :(得分:0)
这个内存限制全部归功于我的表格#34; Tablex"被链接到另一个包含大量数据的表。改变模型后一切都很好。