O MySQL falhou ao iniciar após ter sido finalizado um longo processo de "LOAD DATA INFILE"

1

Eu matei um processo do MySQL que está executando um comando LOAD DATA INFILE para carregar um arquivo .csv de 9GB em uma tabela em um banco de dados InnoDB.

Agora, quando eu executo mysql DATABASE , ele simplesmente parou e mostrou

Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

O que posso fazer agora? Eu acho que ele está fazendo algum trabalho de reparo e limpeza causado pelo comando LOAD DATA INFILE interrompido.

Solução:

Eu tentei service mysql restart , mas eu decidi matar todos os processos do mysqld à força depois de reiniciar demorou mais de 1 hora e ainda não sei quantas horas a mais para completar.

Então usei service mysql start para executar o servidor MySQL novamente. Felizmente o processo de reconstrução do InnoDB é bastante rápido, levou cerca de 15 minutos para ser concluído, sem perda de dados.

    
por jack 18.08.2010 / 16:00

1 resposta

1

As informações da tabela de leitura podem ser um processo intensivo, dependendo do tamanho ou da carga no banco de dados.

Enquanto você matou o processo do sistema executando o comando MySQL, você provavelmente não terminou a conexão com o MySQL.

Execute mysql -A DATABASE ou apenas mysql , observe a lista de processos com show full processlist; e se você deseja que a conexão termine a execução kill processnumber; .

    
por 18.08.2010 / 16:12

Tags