Recuperar uma transmissão

É possível recuperar uma transmissão que falhou permanentemente sem precisar criar uma nova. Para isso, especifique a posição a partir da qual o Datastream tenta para retomar a leitura das alterações na origem.

Visão geral da recuperação de stream

Um stream em execução pode encontrar alguns erros irrecuperáveis e mudar seu estado para FAILED_PERMANENTLY: Esses erros impedem a execução do stream. pode causar perda de dados.

Para recuperar uma transmissão com falha permanente, configure-a para ignorar o erro e continue lendo os eventos em andamento em vez de recriar o stream e preencher os dados históricos. Para recuperar uma transmissão que falhou permanentemente, você redefiniu o para começar a ler em uma posição de replicação diferente. Cada uma tipo de origem tem sua própria definição do que é uma posição de replicação:

  • Para origens Oracle, uma posição de replicação é um arquivo de redo log. no banco de dados e no número de alteração do sistema (SCN, na sigla em inglês) nesse arquivo.
  • Para fontes MySQL, uma posição de replicação é o registro binário do banco de dados (binlog) e a posição nesse arquivo.
  • Para fontes PostgreSQL (incluindo AlloyDB para PostgreSQL), uma posição de replicação é o número de sequência de registro (LSN, na sigla em inglês) no slot de replicação. Durante a recuperação, o stream começa a ler a partir do primeiro LSN no slot de replicação.
.

Recuperar um stream de uma origem MySQL ou Oracle

Para recuperar um stream de uma origem MySQL ou Oracle, você tem as seguintes opções:

  • Tentar novamente na posição atual (recomendado): selecione essa opção para tenta transmitir da posição atual em que houve falha na última vez. Primeiro, corrija o arquivo de registro ou recupere-o do backup. Esta é a é a opção recomendada.

  • Pular a posição atual e transmitir na próxima posição disponível: se um ou mais arquivos de registro estiverem ausentes, selecione esta opção para ignorar esses arquivos e retome o streaming na primeira posição no arquivo seguinte disponível. O as alterações dos arquivos de registro ausentes são perdidas, mas você pode recuperá-las executar um preenchimento.

  • Pular a posição atual e transmitir da posição mais recente: se um ou mais arquivos de registro estiverem ausentes, selecione esta opção para ignorar esses arquivos e retomar o streaming da posição mais recente no arquivo de registro mais atualizado. As alterações dos arquivos de registro ausentes são perdidas, mas você pode recuperá-las executar um preenchimento.

  • Retomar na posição e no arquivo de streaming de sua preferência: selecione essa opção. para retomar o stream em um arquivo e em uma posição de registro específicos. Algumas mudanças podem serão perdidas se a posição do registro especificada não se sobrepuser ou não se sobrepor seguir a posição de registro perdida. É possível recuperar essas alterações realizando um preenchimento.

Para recuperar um stream com falha permanente para uma fonte MySQL ou Oracle, execute as seguintes etapas:

  1. Acesse a página Streams no Google Cloud.

    Acessar a página "Mural"

  2. Marque a caixa de seleção à esquerda da transmissão que você quer recuperar.

  3. Clique em Recuperar.

  4. O painel Escolha uma estratégia de recuperação será aberto. Selecione uma opção. Se você selecionar Retomar na posição e no arquivo de streaming de sua preferência, digite o seguinte:

    • Para uma origem do MySQL: o nome do arquivo do registro no campo Nome do arquivo e a posição do registro no campo Posição. Se você não especificar a posição, a transmissão será retomada. da primeira posição no arquivo de registro indicado.
    • Para uma origem Oracle: o número de alteração do sistema (SCN, na sigla em inglês) na seção Alteração do sistema número (SCN, na sigla em inglês). Este campo é obrigatório.
  5. Clique em Aplicar.

  6. Quando o stream é recuperado, um carimbo de data/hora aparece na coluna Recuperado na página Streams.

Recuperar um stream de uma origem do PostgreSQL

Para recuperar um stream de uma origem PostgreSQL, você precisa fornecer a replicação nome do slot. O servidor usa esse slot de replicação para enviar eventos ao Datastream. O nome do slot de replicação pode ser o mesmo do slot usado para o stream com falha ou diferente:

Qualquer evento de alteração na origem que ocorreu entre a perda de posição do registro e o primeiro LSN do novo slot de replicação será perdido. Você pode recuperar essas mudanças com um preenchimento.

Para recuperar um stream com falha permanente para uma origem do PostgreSQL, execute o etapas a seguir:

  1. Acesse a página Streams no Google Cloud.

    Acessar a página "Mural"

  2. Marque a caixa de seleção à esquerda da transmissão que você quer recuperar.

  3. Clique em Recuperar.

  4. O painel Definir um novo slot de replicação será aberto.

  5. No campo Nome do slot de replicação, insira o nome de uma nova replicação do qual o stream tentará se recuperar. Se você tiver recriado a replicação usando o mesmo nome ou reutilizar o especificado ao configurou sua origem, deixe este campo em branco.

  6. Clique em Aplicar.

  7. Quando o stream é recuperado, um carimbo de data/hora aparece na coluna Recuperado na página Streams.

Também é possível recuperar transmissões que falharam permanentemente na seção Detalhes da transmissão. página. Para fazer isso, clique em Recuperar transmissão ao visualizar as informações detalhadas. sobre sua transmissão.

Usar a recuperação de stream para uma origem MySQL em um cenário de failover manual

É possível executar um failover manual e usar a recuperação de stream para evitar recriar sua os fluxos do zero durante a manutenção ou falha na instância principal. Geralmente, o Datastream não aceita failovers para réplicas porque eles quebram a continuidade do binlog, mas você pode seguir estas etapas para recuperar os e garantir que seus dados de alterações sejam capturados:

  1. Interrompa todas as gravações na instância principal.
  2. Verifique se a métrica de atualização de dados está definida como 0. Isso significa que o Datastream capturou todas as alterações e não há novos eventos para ler da origem. Para Saiba mais em Monitorar um stream.
  3. Faça o failover para a nova instância do banco de dados.
  4. Se necessário, atualize o perfil de conexão do stream para a nova instância do banco de dados Por exemplo, talvez seja necessário alterar o nome do host ou o endereço IP do banco de dados. Para mais informações, consulte Modificar perfis de conexão.
  5. Recupere o stream de uma posição específica na instância de failover para garantir a continuidade da CDC.