Se ocorre o corrompimento de uma página do banco de dados,
          você pode desejar fazer um dump de suas tabelas no banco de
          dados com SELECT INTO OUTFILE, e
          normalmente a maioria dos dados estará intacto e correto. Mas
          o corrompimento pode fazer com que SELECT * FROM
          table, ou operações de background do InnoDB falhe
          ou apresentem avisos, ou até mesmo a recuperação
          roll-forward do InnoDB falhe. A partir do InnoDB 3.23.44,
          existe uma opção do my.cnf com a qual
          você pode forçar o InnoDB a inicializar, e você também
          pode prevenir que operações de background sejam executadas,
          e assim você poderá fazer um dump de suas tabelas. Por
          exemplo, você pode configurar
set-variable = innodb_force_recovery = 4
          no my.cnf.
        
          As alternativas para innodb_force_recovery
          estão listadas abaixo. O banco de dados não deve ser usado
          com estas opções! Como medida de segurança o InnoDB previne
          um usuário de fazer um INSERT,
          UPDATE, ou DELETE quando
          esta opção é > 0.
        
          A partir da versão 3.23.53 e 4.0.4, você tem permissão de
          se fazer um DROP ou
          CREATE de uma tabela mesmo se a
          recuperação forçada está sendo usada. Se você sabe que
          determinada tabela está causando uma falha no rollback, você
          pode deletá-la. Você pode usar isto também para para um
          rollback em execução causado por uma falha importanta ou
          ALTER TABLE. Você pode matar o processo
          mysqld e usar a opção do my.cnf
          innodb_force_recovery=3 para trazer o seu
          banco de dados sem o rollback. Apague então a tabela que
          está causando o rollback.
        
Um número maior abaixo significa que todas as precauções de números menores estão incluídas. Se você puder fazer um dump de todas as suas tabelas com uma opção de no máximo 4, então você está relativamente seguro que apenas alguns dados em paginas individuais corrompidas são perdidos. A opção 6 é mais dramática, porque páginas de bancos de dados são deixadas e um estado obsoleto, que podem introduzir mais corrompimento em árvores-B e outras estruturas de banco de dados.
              1 (SRV_FORCE_IGNORE_CORRUPT) deixa o servidor executar
              mesmo se ele detectar uma página corrompida; tenta fazer
              SELECT * FROM table saltar os índices
              corrompidos e páginas, o que ajuda ao fazer dump de
              tabelas;
            
2 (SRV_FORCE_NO_BACKGROUND) evita que a thread principal seja executada: se uma falha ocorresse na remoção, isto seria evitado.
3 (SRV_FORCE_NO_TRX_UNDO) não executa rollback de transações depois da recuperação;
4 (SRV_FORCE_NO_IBUF_MERGE) também previne operações merge no buffer de inserções: se eles causassem falhar, melhor não fazê-los; não calcula as estatísticas da tabelas;
5 (SRV_FORCE_NO_UNDO_LOG_SCAN) não procura por undo logs quando iniciar o banco de dados: InnoDB tratará mesmo transações incompletas como comitadas;
6 (SRV_FORCE_NO_LOG_REDO) não faça o roll-forward no log em em conexão com recuperação.
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.

