可能重复:
X字节允许的内存大小已耗尽
我正在处理一个很大的数据库(87MB)导入,并做到这一点,我用一个PHP脚本。 所有的操作都是在Ubuntu Lucid上安装apache的语言环境下完成的。
几分钟后我运行脚本时收到此错误:
Allowed memory size of 268435456 bytes exhausted
我已经在php.ini文件中将memory_limit
更改为2GB,并重新启动了apache。 之后,我检查了phpinfo()
,我发现memory_limit
被设置为'2048M',所以一切正常。
但是当我重新启动我的脚本我收到同样的错误,256mb内存限制exahusted。
我错在哪里?
如果你正在使用的脚本是从其他人那里借用的,请确保没有ini_set('memory_limit', '256M')
,尽管你在php.ini中做了任何改变,
Ubuntu有两个php.ini,一个用于apache,一个用于cli。
你确定你编辑了正确的吗?
命令行通常在/etc/php5/cli/php.ini
。
很可能使用了错误的php.ini。
在相同的phpinfo()
s输出中,您可以检查准确使用的文件,搜索“配置文件”。
您可以从您使用的真实脚本中调用phpinfo()
函数,确保准确获取脚本的设置(不同的设置可用于不同的虚拟hsots,路径等)。