Подтвердить что ты не робот

Допустимый размер памяти 268435456 байт.

Возможный дубликат:
Допустимый размер памяти X байт исчерпан

Я обрабатываю небольшой импорт большой базы данных (87mb), и для этого я использую PHP скрипт. Все операции выполняются в локали с установкой apache на Ubuntu Lucid.

Когда я запустил script через несколько минут, я получаю эту ошибку:

Allowed memory size of 268435456 bytes exhausted 

Я изменил memory_limit на 2 ГБ в файле php.ini и перезапустил apache. После этого я проверил phpinfo(), и я вижу, что memory_limit установлен на '2048M', поэтому все в порядке.

Но когда я перезапускаю свой script, я получаю ту же ошибку, предел памяти 256 МБ exahusted.

Где я ошибаюсь?

4b9b3361

Ответ 1

Если используемый вами script заимствован у кого-то другого, убедитесь, что нет ini_set('memory_limit', '256M'), который даст точно эффект, который вы видите, несмотря на любые изменения, внесенные вами в php.ini.

Ответ 2

Ubuntu имеет два php.ini, один для apache и один для cli.
Вы уверены, что отредактировали правильный? Для командной строки обычно находится /etc/php5/cli/php.ini.

Ответ 3

Скорее всего, используется неверный php.ini.

В том же выводе phpinfo() -s вы можете проверить, какой файл используется в точности, найти "Файл конфигурации".

Вы можете вызвать функцию phpinfo() из вашего реального script, чтобы получить настройки именно для вашего script (различные настройки могут использоваться для разных виртуальных hsots, путей и т.д.).