12

可能重复:
X 字节的允许内存大小已用尽

我正在处理一个很小的大数据库(87mb)导入,为此我使用了一个 php 脚本。所有操作都是在 Ubuntu Lucid 上安装 apache 的语言环境中进行的。

几分钟后运行脚本时,我收到此错误:

Allowed memory size of 268435456 bytes exhausted 

memory_limit在 php.ini 文件中更改为 2GB 并重新启动了 apache。之后我检查了一下phpinfo(),发现它memory_limit设置为“2048M”,所以一切正常。

但是当我重新启动我的脚本时,我收到了同样的错误,256mb 内存限制用尽了。

我哪里错了?

4

3 回答 3

13

如果您使用的脚本是从其他人那里借来的,请确保ini_set('memory_limit', '256M')即使您在 php.ini 中进行了任何更改,也不会产生您所看到的确切效果。

于 2011-10-08T22:46:26.960 回答
2

Ubuntu 有两个 php.ini,一个用于 apache,一个用于 cli。
你确定你编辑的是正确的吗?
用于命令行的通常在/etc/php5/cli/php.ini.

于 2010-10-11T03:39:31.017 回答
0

很可能使用了错误的 php.ini。

在相同的phpinfo()-s 输出中,您可以检查确切使用的文件,搜索“配置文件”。

您可以从您使用的真实脚本中调用该phpinfo()函数,以确保获得完全适合您的脚本的设置(不同的设置可用于不同的虚拟 hsot、路径等)。

于 2010-10-11T08:00:40.463 回答