RAID 1 no servidor - precisa de um arquivo da unidade espelhada

0

Cerca de 3 anos atrás eu tinha configurado um servidor Ubuntu para uma clínica médica. Eu tinha definido em 2 HDD's com a finalidade de ter RAID 1 (software RAID)

Hoje, de repente, eles não podem acessar uma tabela em um dos bancos de dados mySQL.

Como agora seria possível recuperar o banco de dados mySQL do HDD espelhado (backup)?

    
por user93078 11.03.2015 / 16:07

4 respostas

5

Um espelho é apenas uma proteção contra uma única falha na unidade. Não é um substituto para um back-up. Se o banco de dados não estiver acessível a partir do RAID-1, ele não estará acessível a partir de um único disco ...

O único recurso é: copiar o banco de dados inteiro para dois discos individuais (para ter duas cópias) usando ddrescue , analisar os dados SMART do disco individual com smartctl e badblocks , instalar novos discos se necessário, formatar (novo?) discos e restaurar o último backup e, em seguida, extrair os dados brutos em uma das cópias e importar tantos dados quanto podem ser importados do extrato.

Você terá perda de dados, embora com ddrescue deva ser mínimo e esperançosamente apenas nos índices!

    
por 11.03.2015 / 16:25
4

O RAID copia imediatamente as alterações para ambos discos. Portanto, se você, por exemplo, rm a um arquivo, será rm 'd em ambos os discos. Ou se algo o corromper, ou qualquer outra coisa.

O RAID-1 apenas protege contra falhas no disco. Se um disco falhar, o array continuará funcionando com praticamente nenhuma interrupção, usando apenas um disco a menos. Não há realmente um disco 'primário' e 'backup' conceitualmente, dois (ou mais) discos funcionam como um disco muito confiável.

Você pode verificar o status da matriz por meio de, por exemplo, cat /proc/mdstat . Se o array está OK e você sofreu corrupção do MySQL, o MySQL possui ferramentas de recuperação ... além disso, restaure a partir do backup.

    
por 11.03.2015 / 16:18
3

Não há unidade de backup, se você tiver o RAID-1, há apenas um espelho. Se uma unidade ficar inativa (a partir de uma matriz de duas unidades), você ainda poderá acessar a segunda unidade e, se ela cair (como parece ser o seu caso), será necessário restaurar a partir do backup.

Se o sistema estiver ativo, você pode verificar o status do ataque fazendo:

cat /prod/mdstat

Se você tiver uma das unidades trabalhando, você terá um U na saída (entre colchetes como [U_] ) nesse caso, seu RAID é "apenas" degradado, mas, nesse caso, ele ainda deve funcionar. E suponho que você tenha configurado a notificação por email para o RAID de qualquer maneira.

Você deve verificar o status da unidade com smartctl .

    
por 11.03.2015 / 16:17
0

Eu segui as instruções no link e consertou a mesa. O aplicativo agora está funcionando bem.

Obrigado a todos.

    
por 12.03.2015 / 11:08

Tags