Ir ao conteúdo
  • Cadastre-se

PHP Fatal error: Allowed memory size - O que pode ser?


Posts recomendados

  • Membro VIP

Caros,

 

Tenho um script que roda backup diariamente dentro das VPS dos meus clientes (CentOS 6.7), esse script é feito todo em PHP, porém em um dos clientes não está fazendo o backup e está retornando a seguinte mensagem de erro: "PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 1038619 bytes) in /usr/bin/backup.php on line 286"

 

Vou postar a linha do código na qual o problema se refere:

/**
 * Função para gerar o arquivo de back para o banco de dados.
 *
 * @return string Nome do arquivo gerado.
 */
function bkp_mysql($file)
{
	// Gera os dados de dump em um vetor para ser salvo em arquivo definido.
	$_TMP_DUMP_DATA = array();
	exec(sprintf("mysqldump -h%s -u%s -p%s --add-drop-database --routines --databases %s", MYSQL_HOST, MYSQL_USER, MYSQL_PASS, MYSQL_DBNAME), $_TMP_DUMP_DATA);

	$file_sql = sprintf('%s%s.sql', PATH_BACKUP_FROM, $file);

	$fp_sql = fopen($file_sql, 'w');
	foreach($_TMP_DUMP_DATA as $data)
	{
		fwrite($fp_sql, "{$data}\r\n");
	}
	fclose($fp_sql);

	// Nome do arquivo gerado.
	return $file_sql;

A linha 286 é essa: 

exec(sprintf("mysqldump -h%s -u%s -p%s --add-drop-database --routines --databases %s", MYSQL_HOST, MYSQL_USER, MYSQL_PASS, MYSQL_DBNAME), $_TMP_DUMP_DATA);

Já entrei no arquivo php.ini do CentOS 6.7 e aumentei o limite de tempo de execução e também o tamanho máximo de arquivos que podem ser enviados/gerados. Mesmo assim o problema continua.

 

Alguém pode me dar uma luz?

 

Agradeço desde já!

Link para o comentário
Compartilhar em outros sites

o problema pela mensagem e mesmo a quantidade de memoria alocada para o PHP no arquivo de configuração dele, tem que ir nele a aumentar a quantidade de memoria conforme viu nas suas busca no google, porém se seu ambiente é compartilhado, precisa ver se tem acesso a mexer nele ou tentar direto no inicio da aplicação

 

No topo do seu script:
ini_set('memory_limit', '16M')

NO php.ini:
memory_limit = 64M

 

 

Fonte: http://www.scriptcase.com.br/forum/index.php?topic=10441.0

 

 

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!