INNODB mysql. Plugin desativado [duplicado]

5

Quando eu inicio o mysql no meu servidor unbuntu eu recebo uma mensagem.

121122 17:39:37 [Note] Plugin 'FEDERATED' is disabled.
121122 17:39:37 InnoDB: The InnoDB memory heap is disabled
121122 17:39:37 InnoDB: Mutexes and rw_locks use GCC atomic builtins
121122 17:39:37 InnoDB: Compressed tables use zlib 1.2.3.4
121122 17:39:37 InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: mmap(137363456 bytes) failed; errno 12
121122 17:39:37 InnoDB: Completed initialization of buffer pool
121122 17:39:37 InnoDB: Fatal error: cannot allocate memory for the buffer pool
121122 17:39:37 [ERROR] Plugin 'InnoDB' init function returned error.
121122 17:39:37 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
121122 17:39:37 [ERROR] Unknown/unsupported storage engine: InnoDB
121122 17:39:37 [ERROR] Aborting

121122 17:39:37 [Note] mysqld: Shutdown complete

algumas vezes recebi uma mensagem dizendo que o plug-in está desativado.

Eu uso o webmin para configurá-lo. Isso poderia ser um problema?

    
por alexcunn 22.11.2012 / 18:46

2 respostas

4

Como o CloudWeavers mencionou, você não tem memória suficiente disponível (incluindo swap). Se você deseja executar nesta configuração, defina um arquivo de troca extra como

dd if=/dev/zero of=/swap.img bs=1M count=512
mkswap -f /swap.img
echo '/swap.img none swap sw 0 0' >> /etc/fstab
swapon -a
sudo chown root:root /swap.img
sudo chmod 0600 /swap.img

para um arquivo de troca de 512 MB (ou seja, um arquivo real) na sua partição raiz (que é realmente um truque para você ir - essa não é uma configuração de prática recomendada) OU reduza seu innodb_buffer_pool_size para um valor menor (novamente não recomendado, esta é uma variável de ajuste importante para o mecanismo InnoDB e não deve ser alterada de forma leve)

sed -i 's/^.+innodb_buffer_pool_size.+/innodb_buffer_pool_size=32M/' /etc/my.cnf
service mysqld restart
    
por 25.11.2012 / 04:02
3

Seus problemas são:

InnoDB: mmap(137363456 bytes) failed; errno 12

E, se você está no GNU / Linux, podemos dar como certo que:

Errno 12: ENOMEM 

Isso significa que a inicialização do InnoDB falhou durante o mapeamento de memória. Você não tem memória suficiente disponível. Eu acho que você não tem nenhuma swap definida (cheque com 'free -m') e você não tem 128MB livres para o plugin InnoDB?

Esse erro automaticamente faz com que o plugin entre em 'disabled' e evita que você use tabelas innodb.

    
por 22.11.2012 / 19:11

Tags