O que acontece quando eu mato um thread da tabela alter que ainda está processando?

7

Se você alterar uma tabela para adicionar um índice, o que poderia acontecer se esse segmento fosse eliminado durante o processamento?

Codificando para o MySQL:

During ALTER TABLE, the kill flag is checked before each block of rows are read from the original table. If the kill flag was set, the statement is aborted and the temporary table is deleted.

Editar: Apenas certificando-se de que isso não causará nenhum problema adicional.

    
por Tim Meers 29.02.2012 / 20:23

1 resposta

14

O que não está claro sobre isso?

O MySQL cria uma tabela temporária com a nova estrutura de dados, copia os dados da tabela original e, quando tudo estiver terminado, usa a tabela temporária como a principal.

Se isso falhar em qualquer etapa (possivelmente devido ao aborto da instrução ALTER TABLE ), a tabela temporária será excluída e nada acontecerá.

    
por 29.02.2012 / 20:29

Tags