Executei uma consulta que excluiu cerca de 18 milhões de registros. Após executar esta consulta, o mysql parou de responder às consultas. Reiniciei o servidor e agora não consigo iniciar o serviço mysql usando o seguinte comando:
service mysql start
Talvez apenas imprima um erro, mas não consigo encontrar o arquivo de log de erros. Estou executando o CentOS 6 e instalei o mariaDB de seu repositório oficial usando o yum.
O que devo fazer para iniciar o mysql? Não me importo se a consulta for cancelada. Posso ver que alguns processos do mysqld estão consumindo CPU e E/S. Acho que talvez ainda esteja tentando executar esta consulta.
Responder1
Você escreveu que "Não consigo iniciar o serviço mysql ...", mas você pode ver alguns processos do mysqld. Tente executar:
service mysql status
Se o serviço for iniciado, tente interrompê-lo e executar o mariaDB em modo de segurança com o registro de erros habilitado. Se o serviço não for iniciado, tente encerrar o processo mysqld (esteja ciente da responsabilidade) e execute o mariaDB em modo de segurança.
Para mais detalhes sobre o modo de segurança, consulte oficialdocumentação.
Responder2
Para qualquer outra pessoa que veja isso, você também pode usar o comando mysqladmin para listar todas as consultas em execução e eliminá-las seletivamente, se necessário. Isso preservaria quaisquer outras consultas em execução nessa instância.
https://dev.mysql.com/doc/refman/5.5/en/mysqladmin.html
Observe que SHOW VARIABLES retornará a localização dos logs do MySQL, se isso também for necessário.