Como Lidar com Erros de Banco de Dados no MySQL

Como Lidar com Erros de Banco de Dados no MySQL
Muitas plataformas de conteúdo usam MySQL em sua gestão: neste tutorial, você vai aprender como consertar erros em bancos de dado do tipo, bem como aprimorar a sua segurança

Os bancos de dados MySQL são usados por muitos sistemas de gerenciamento de conteúdo (CMS) para oferecer suporte a sites. Dada a possibilidade deles serem acessados diretamente através da interface da web, eles também podem ser mais vulneráveis que outros sistemas. É por isso que a proteção do MySQL requer não apenas um pouco, mas bastante atenção. O que você deve fazer se perceber que o serviço do CMS não funciona corretamente devido à inacessibilidade do banco de dados Isso afetou seu site, causou problemas em sua loja online e muito mais.

Se o problema realmente estiver no banco de dados, você precisará procurar opções de recuperação mais abrangentes. Vale o aviso: trabalhar com bancos de dados nunca foi uma solução simples e isso pode exigir um conhecimento profundo dos bancos de dados e da linguagem SQL como um todo. O tutorial de hoje busca mostrar exatamente isso.

Erros em bancos de dados MySQL podem comprometer o funcionamento de várias plataformas: saiba como cuidar deles
Erros em bancos de dados MySQL podem comprometer o funcionamento de várias plataformas: saiba como cuidar deles

No entanto, existe uma profissão que cuida desse problema – a de administrador de banco de dados -, o que significa que existem pessoas especialmente treinadas para garantir que o bancos não sejam “danificados”. Você já deve ter ouvido falar sobre os administradores do Word, Excel e similares. Bem, ao trabalhar com bancos de dados, eles são necessários. Então, o que fazer se essas pessoas não estiverem na sua empresa e mas a necessidade de tê-las se fizer imediata?

Os desenvolvedores de aplicativos que usam bancos de dados do MySQL tentaram fornecer algumas opções de recuperação. Existem muitos artigos sobre administração e recuperação de bancos, mas a maioria pode ser bem complicada. Portanto, se, no final, você não conseguiu descobrir, ou se esses métodos foram inúteis, tente a ferramenta universal exclusiva — Recovery Toolbox for MySQL — que é simples e eficiente na recuperação de bancos de dados do MySQL das versões “InnoDB” e “MyISAM”.

Obviamente, tudo isso faz sentido somente se não houver um backup mais atualizado para o banco de dados. Pode ser um dump de banco de dados, uma “cópia a frio” de um arquivo, uma imagem de disco ou outra coisa. Se houver um backup, não continue lendo, pois aqui, essa opção não é considerada.

Recuperação Interna do MySQL

Então, o que você deve fazer se o banco de dados MySQL parar de executar:

  1. Abra o arquivo “my.cnf” e defina o seguinte parâmetro: “innodb_force_recovery = 1”
  2. Reinicie o MySQL com o seguinte comando: “/etc/init.d/mysql restart”
  3. Crie um dump do banco de dados e o empacote: “mysqldump db | gzip> db.sql.gz”
  4. Crie um novo banco de dados: mysql -e create database “new_DB”;
  5. Importe os dados para: “zcat database.sql.gz | mysql new_DB”.

Reiniciar o MySQL dessa forma não inicia todos os processos associados e, em alguns casos, permite abrir um banco de dados antigo. Usando esses comandos, tentamos despejar o banco de dados antigos, importando-o para um novo, que você abre da maneira normal. Se isso acontecer, você pode excluir o banco de dados antigo. A propósito, se o método não ajudar, e o banco de dados antigo não for iniciado, você deverá tentar outros valores do parâmetro “innodb_force_recovery”, até “6”.

MySQL
Imagem: Reprodução

Durante a inicialização normal do banco de dados, o sistema tenta iniciar todos os processos, incluindo aqueles que foram, por exemplo, finalizados de forma anormal devido a problemas com eletricidade. Graças à opção “innodb_force_recovery”, você pode desativar alguns parâmetros que interferem no lançamento regular do banco de dados. Os números significam o seguinte:

  • A inicialização do MySQL não para, mesmo que o sistema detecte páginas corrompidas durante o processo.
  • Cancelar o lançamento de operações em segundo plano
  • Cancelar tentativas de reverter transações
  • Recusa em calcular estatísticas e o uso de alterações salvas
  • Não leva em consideração os registros de reversão na inicialização
  • Não leva em consideração os parâmetros “ib_logfiles” durante a inicialização

Maneiras Alternativas de Recuperação de Banco de Dados

O método descrito acima é bastante útil, embora, infelizmente, possa ser difícil para alguns usuários. Porém, trabalhar com qualquer formato de banco de dados é sempre complicado. Se você não deseja editar configurações, abra a linha de comando e aprenda a sintaxe dos comandos necessários. Então, você precisará de uma ferramenta relativamente simples e fácil de usar. Recentemente, tenho usado bastante o Recovery Toolbox for MySQL.

Imagem: Captura/Recovery Toolbox for MySQL
Imagem: Captura/Recovery Toolbox for MySQL

Talvez esta seja a maneira mais fácil e eficaz de recuperar o banco de dados MySQL, exatamente o que a maioria dos usuários iniciantes precisa. Existem algumas opções:

  1. Lide com tudo sozinho, passando vários dias fazendo isso
  2. Restaure o banco de dados dentro de uma hora
  3. Continue trabalhando e evite perdas.

Usar o Recovery Toolbox for MySQL é muito simples; você nem precisa ler as instruções – ao contrário das descrições detalhadas de como editar configurações e similares – todas as ações são executadas intuitivamente. O programa trabalha apenas com uma cópia do banco de dados, portanto nunca atrapalha o que resta do banco de dados antigo. Você sentirá a diferença de se aprofundar nas configurações do servidor de “produção”, sem medo de fazer algo errado e levar à destruição o que resta.

Como Recuperar um Banco de Dados Usando o Recovery Toolbox for MySQL

Para restaurar um banco de dados MySQL danificado usando este programa, você precisa fazer o seguinte:

  1. Faça o download do Recovery Toolbox for MySQL na página
  2. Instale e execute o programa
  3. Selecione a pasta que armazena os arquivos do banco de dados MySQL danificados
  4. Selecione um banco de dados danificado na lista
  5. Execute a análise do banco de dados selecionado
  6. Visualize os resultados da recuperação: tabelas, objetos, índices
  7. Configure um método para salvar os dados recuperados
  8. Salve os dados (disponível apenas na versão completa do software)
Imagem: Captura/Recovery Toolbox for MySQL
Imagem: Captura/Recovery Toolbox for MySQL

O programa é baixado totalmente gratuitamente e instalado sem registro. Usando o Recovery Toolbox for MySQL, você pode visualizar os dados recuperados gratuitamente e avaliar o trabalho realizado.

Você pode até espionar algumas alterações e facilmente fazê-las você mesmo com suas mãos em um backup “estragado”, mas que ainda funcione; se você fizer alguma edição, leve em consideração as alterações mais recentes. É necessário pagar apenas se for preciso salvar os dados recuperados, recriar o banco de dados MySQL e conectá-lo ao sistema.

Imagem: Captura/Recovery Toolbox for MySQL
Imagem: Captura/Recovery Toolbox for MySQL

Segurança ao Trabalhar com o Recovery Toolbox for MySQL

O programa pode ser instalado em qualquer computador com Windows. Você pode fazer a instalação em alguns minutos e, depois disso, você pode iniciar a recuperação, que, a propósito, pode demorar bastante tempo, dependendo do tamanho do banco de dados original. Você pode controlar a ausência de conexões suspeitas de várias maneiras, sendo a mais simples delas a desconexão física do cabo de rede. E o mais importante, isso não afeta a eficácia do trabalho de forma alguma, porque o Recovery Toolbox for MySQL não usa conexões de terceiros.

Existe um método um pouco mais complicado: instalar uma ferramenta de análise de tráfego de rede — uma boa recomendação é o WireShark — e verificar se pacotes suspeitos do Recovery Toolbox for MySQL estão chegando. Naturalmente, esse método envolve um entusiasmo em particular, já que os manuais do WireShark são bastante grandes e, o mais importante, a disponibilidade de tempo livre. Portanto, o uso do Recovery Toolbox for MySQL é mais recomendado para economizar tempo e recuperar o banco de dados no sistema o mais rápido possível.

O mais importante é que o programa sempre funciona apenas com uma cópia do banco de dados original; portanto, esse método de recuperação é muito mais confiável do que fazer alterações nas configurações do banco de dados e aguardar para ver o que acontece. Lembre-se, uma tentativa de reparar um banco de dados em um servidor de produção pode acabar com ele; isso ocorre mesmo com administradores experientes.

Receba notícias como essa no seu email. Inscreva-se aqui:

Adicionar Comentário

Clique aqui para postar um comentário

Assine nossa Newsletter