Extração de Posição para um Ponto Inicial Específico
Você pode posicionar o processo Extract em um ponto inicial específico nos logs de transações. Você pode definir isso na interface Web, no Admin Client ou no ponto final do serviço de API REST.
Se você estiver criando um Extract, deverá executar as seguintes etapas para iniciar o Extract recém-criado em uma posição específica no banco de dados:
-
Adicione o Extract com a opção
BEGIN NOW, conforme mostrado no seguinte exemplo:ADD EXTRACT extn, TRANLOG, BEGIN NOW -
Registre o processo Extract.
REGISTER EXTRACT extn DATABASE -
Altere este Extract e especifique o timestamp.
ALTER EXTRACT extn BEGIN 2020-08-02T06:05:30.000Z
Interface Web
Para posicionar um Extract em um ponto inicial específico no banco de dados:
-
Interrompa o processo de Extract se ele estiver em execução.
-
Na coluna Ações, clique no ícone de três pontos e clique em Alterar.
-
Na caixa de diálogo Alterar Extração, clique na opção Iniciar e selecione Horário Personalizado.
-
Selecione o timestamp no campo Horário Personalizado e selecione o Fuso Horário.
-
Clique em Enviar.
-
Reinicie o Extract clicando no ícone Play na coluna Ação.
Admin Client
Para posicionar um processo Extract usando os comandos ADD/ALTER EXTRACT:
{ADD | ALTER EXTRACT} *group*, LOGNUM *log_num*, LOGPOS *log_pos*
-
group é o nome do grupo de Extract do Oracle GoldenGate para o qual a posição inicial é obrigatória.
-
LOGNUMé o número de arquivo do log. Por exemplo, se o nome de arquivo de log necessário fortest.000034, o valorLOGNUMserá 34. O Extract procurará esse arquivo de log. O comandoADD EXTRACTfalhará se o valorLOGNUMcontiver zeros que precedem o valor. Por exemplo, oADD EXTRACT extn, TRANLOG, LOGNUM 000001, LOGPOS 0falhará. Em vez disso, definaLOGNUMcomo 1 para esse exemplo ser bem-sucedido. -
LOGPOS é um valor da defasagem do evento dentro do arquivo de log que identifica um registro da transação específico. Os valores de referência de evento são armazenados na seção de cabeçalho de um registro de log. Para posicionar no início de um arquivo
binlog, defina aLOGPOScomo 0.
MySQL Considerações para Posicionar a Extração para um Ponto Inicial Específico
Nos logs MySQL, um valor de deslocamento de evento só pode ser exclusivo em um determinado arquivo binário. A combinação do valor da posição e um número de log identificará exclusivamente um registro de transação. O tamanho máximo do número do Log é um inteiro não assinado de 8 bytes e o tamanho máximo do deslocamento do Log é um inteiro não assinado de 8 bytes. O número do log e o deslocamento do log são separados por um delimitador de pipe ('|'). Os registros transacionais disponíveis após essa posição no log especificado serão capturados pelo Extract. Além disso, você pode posicionar um Extract usando um timestamp.