MyISAM era o mecanismo de armazenamento padrão para as versões do sistema de gerenciamento de banco de dados relacional do MySQL anteriores a 5.5 link
Wheezy desaprova o uso do MyISAM com o MySQL 5.5.
Adicione simplesmente:
default-storage-engine=myisam
.. sob a seção [mysqld]
no arquivo /etc/mysql/my.cnf
Recentemente encontrei isso ao fazer uma atualização do Debian Squeeze para o Wheezy. Após o upgrade, o MySQL não pôde ser iniciado.
Os sintomas que recebi foram um pouco parecidos com o que é postado aqui:
No entanto, a solução proposta de
rm /var/lib/mysql/ib*
.. não funcionou para mim.
Para tornar as coisas mais interessantes, não houve erros escritos nos arquivos de log do mysql. Eles estavam lá, mas apenas 0 bytes. Btw, o diretório /var/log/mysql
estava vazio.
wordpress:~# l -dg /var/log/mysql*
drwxr-s--- 2 adm 4.0K Jun 10 2010 /var/log/mysql
-rw-r----- 1 adm 0 Oct 9 15:06 /var/log/mysql.err
-rw-r----- 1 adm 0 Oct 9 15:06 /var/log/mysql.log
Em seguida, executei o comando mysqld
na linha de comando. Isso finalmente produziu algumas informações úteis:
wordpress:~# mysqld
141009 15:39:50 [Warning] Using unique option prefix key_buffer instead of key_buffer_size is deprecated and will be removed in a future release. Please use the full name instead.
141009 15:39:50 [Warning] Using unique option prefix myisam-recover instead of myisam-recover-options is deprecated and will be removed in a future release. Please use the full name instead.
141009 15:39:50 [Note] Plugin 'FEDERATED' is disabled.
141009 15:39:50 InnoDB: The InnoDB memory heap is disabled
141009 15:39:50 InnoDB: Mutexes and rw_locks use GCC atomic builtins
141009 15:39:50 InnoDB: Compressed tables use zlib 1.2.7
141009 15:39:50 InnoDB: Using Linux native AIO
141009 15:39:50 InnoDB: Initializing buffer pool, size = 128.0M
InnoDB: mmap(135987200 bytes) failed; errno 12
141009 15:39:50 InnoDB: Completed initialization of buffer pool
141009 15:39:50 InnoDB: Fatal error: cannot allocate memory for the buffer pool
141009 15:39:50 [ERROR] Plugin 'InnoDB' init function returned error.
141009 15:39:50 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
141009 15:39:50 [ERROR] Unknown/unsupported storage engine: InnoDB
141009 15:39:50 [ERROR] Aborting
141009 15:39:50 [Note] mysqld: Shutdown complete
Aparentemente, o InnoDB não era suportado. Isso é bom para mim, pois tenho usado MyISAM
no passado neste servidor.
Uma busca rápida por alguns desses erros apontou para um link (também no ServerFault) com o anser em um dos comentários:
Mecanismo de armazenamento desconhecido / sem suporte: InnoDB | MySQL Ubuntu
A chave é especificar o mecanismo de armazenamento padrão de acordo com a resposta de Andy Mikhaylenko.
Aparentemente, a resposta também fala em adicionar skip-innodb
, mas isso não era um requisito no meu sistema para fazer o MySQL iniciar novamente.