START REPLICAT
Use START REPLICAT para iniciar a Replicação. Para confirmar que o processo Replicat foi iniciado, use o comando INFO REPLICAT ou STATUS REPLICAT.
Ao iniciar um grupo Replicat integrado para um banco de dados Oracle de destino, o START REPLICAT registra automaticamente o Replicat com o banco de dados alvo.
Um Replicat coordenado só pode ser iniciado como um todo. Não há opção para iniciar threads individuais. Se o shutdown anterior de um Replicat coordenado não foi limpo, os threads poderão ter sido interrompidos em diferentes posições no arquivo de trilha. Se isso acontecer, o START REPLICAT gravará uma advertência se o arquivo de parâmetros foi alterado desde a execução anterior e gerará um erro se o número de threads tiver sido alterado.
Ponto Inicial Normal
O Replicat pode ser iniciado em seu ponto inicial normal (de checkpoints iniciais ou atuais) ou de uma posição alternativa, especificada pelo usuário, na trilha.
START REPLICAT, sem nenhuma opção, faz com que a Replicat comece a processar em um dos seguintes pontos para manter a integridade de dados:
-
Após um encerramento normal ou não: Na primeira transação não processada na trilha da execução anterior, conforme representado pelo checkpoint de leitura atual.
-
A primeira inicialização após a criação do grupo: No início do arquivo de trilha ativo (
seqno 0,rba 0).
Ponto Inicial Alternativo
As opções SKIPTRANSACTION, ATCSN e AFTERCSN de START REPLICAT fazem com que a Replicação como um todo, ou threads específicos de um Replicat coordenado, comece o processamento em uma transação na trilha que não seja o ponto inicial normal. Use essas opções para:
-
Especificar uma posição de recuperação lógica quando um erro impedir que o Replicat avance na trilha. O Replicat pode ser posicionado para ignorar a(s) transação(ões) inválida(s), com o entendimento de que os dados não serão aplicados ao destino.
-
Ignorar as transações replicadas que causarão erros de registros duplicados e ausentes após um backup ser aplicado ao destino durante uma carga inicial. Essas opções fazem com que o Replicat descarte transações que ocorreram antes do conjunto de alterações mais recentes que foram capturadas no backup. Você pode mapear o valor do identificador serial que corresponde à conclusão do backup para um valor de CSN e depois iniciar o Replicat para começar a aplicar transações a partir do CSN especificado em diante.
Observação: Ignorar uma transação, ou começar em ou após um CSN, pode fazer com que a Replicação inicie mais lentamente do que a normal, dependendo da quantidade de dados na trilha deve ser lida antes de chegar ao registro da transação apropriado. Para exibir o andamento da inicialização, use o `SEND
REPLICAT` command with the `STATUS` option. To omit the need for Replicat to read through transactions that ultimately will be skipped, you can use the `ATCSN` or `AFTERCSN` option when starting Extract, so that those transactions are omitted from the trail, see `START EXTRACT`. {: .infoboxnote}
Sintaxe
START REPLICAT group_name
[SKIPTRANSACTION | {ATCSN csn | AFTERCSN csn}]
[FILTERDUPTRANSACTIONS | NOFILTERDUPTRANSACTIONS]
[THREADS (threadID[, threadID][, ...][, thread_range[, thread_range][, ...])
group_name
O nome de um grupo Replicat ou um caractere curinga (*) para especificar diversos grupos. Por exemplo, T* inicia todos os grupos de Replicação cujos nomes começam com T.
SKIPTRANSACTION
Faz com que o Replicat ignore a primeira transação que encontra após sua posição de inicialização esperada na trilha. Todas as operações dessa primeira transação são excluídas.
Se o parâmetro MAXTRANSOPS também estiver sendo usado para esse processo Replicat, é possível que o processo comece a ler o arquivo de trilha de algum lugar no meio de uma transação. Nesse caso, o restante da transação parcial é ignorado e o Replicat retoma o processamento normal no próximo registro de início de transação no arquivo. Os registros ignorados são gravados no arquivo do descarte se o parâmetro DISCARDFILE estiver sendo usado; caso contrário, uma mensagem será gravada para o arquivo do relatório que seja semelhante a:
User requested START SKIPTRANSACTION. The current transaction will be skipped. Transaction ID txid, position Seqno seqno, RBA rba
O SKIPTRANSACTION é válido somente quando a trilha que o Replicat está lendo é parte de uma configuração de sincronização on-line de alterações (com pontos de verificação). Não válido para cargas iniciais de tipo de tarefa (em que SPECIALRUN é usado com ADD REPLICAT).
ATCSN csn |
AFTERCSN csn |
Estabelece um ponto inicial definido pelo usuário em um CSN específico. Quando ATCSN ou AFTERCSN é usado, uma mensagem semelhante a uma das seguintes é gravada no arquivo do relatório:
User requested start at commit sequence number (CSN) csn-string
User requested start after commit sequence number (CSN) csn-string
Informações gerais sobre essas opções:
-
Só é válido quando a trilha que o Replicat está lendo faz parte de uma configuração de sincronização de alteração on-line (com checkpoints). Não válido para cargas iniciais de tipo de tarefa (em que
SPECIALRUNé usado comADD REPLICAT). -
Para suportar o início em um CSN, ou após ele, o CSN é armazenado no primeiro registro de trilha de cada transação. Se Replicat for iniciado com
AFTERCSNem relação a uma versão anterior da trilha, o Replicat será encerrado e gravará um erro no relatório informando que não há suporte para o formato da trilha.ATCSNFaz com que o Replicat inicie o processamento na transação que tem o CSN especificado. Qualquer transação na trilha que tenha valores de CSN inferiores ao especificado será ignorada.
AFTERCSNFaz com que o Replicat inicie o processamento na transação que ocorreu após aquela com o CSN especificado. Qualquer transação na trilha que tenha valores de CSN inferiores ou iguais ao especificado será ignorada.
csnEspecifica um valor de CSN. Digite o valor do CSN no formato válido para o banco de dados. Consulte Número de Sequência de Commit (CSN) para obter formatos e descrições de CSN. O Replicat será encerrado anormalmente se o formato for inválido e gravará uma mensagem no arquivo de relatório. Para determinar que o CSN seja fornecido após a conclusão de uma carga inicial, use o identificador de commit no qual o utilitário de carregamento concluiu a carga. Caso contrário, siga as instruções no procedimento de carga inicial para determinar quando iniciar o Replicat.
FILTERDUPTRANSACTIONS | NOFILTERDUPTRANSACTIONS
Faz com que o Replicat ignore as transações que já processou. Use quando Extract for reposicionado para um novo ponto inicial (consulte a opção ATCSN ou AFTERCSN de "START EXTRACT") e você tiver certeza de que há transações duplicadas na trilha que podem fazer com que a Replicação seja interrompida. Essa opção exige o uso de uma tabela de checkpoints. O padrão é FILTERDUPTRANSACTIONS. No entanto, se você usar NOFILTERDUPTRANSACTIONS, a definição padrão do Replicat integrado estará substituída e fará com que ele não filtre as duplicatas. Portanto, essa opção tem o mesmo efeito no Replicat clássico e integrado.
THREADS (threadID[, threadID][, ...][, thread_range[, thread_range][, ...])
Válido para SKIPTRANSACTION, ATCSN e AFTERCSN quando a Replicação estiver no modo coordenado. Não é válido para START REPLICAT sem essas opções. Inicia o(s) thread(s) do Replicat especificado(s) no local determinado.
threadID[, threadID][, ...]
Especifica um ID do thread ou uma lista de threads delimitada por vírgulas no formato threadID, threadID, threadID.
thread_range[, thread_range][, ...]
Especifica uma faixa de threads na forma de threadIDlow-threadIDhigh ou de uma lista de faixas delimitada por vírgulas no formato de threadIDlow-threadIDhigh, threadIDlow-threadIDhigh.
Uma combinação desses formatos é permitida, como threadID, threadID, threadIDlow-threadIDhigh.
Exemplos
START REPLICAT reps
O exemplo a seguir inicia o Replicat em um CSN específico do sistema Oracle.
START REPLICAT reps, ATCSN 6488359
O exemplo a seguir inicia o Replicat em um CSN específico do SQL Server após aquele com o CSN especificado.
START REPLICAT reps, AFTERCSN 0X000004D2:0000162E:0009
O exemplo a seguir faz com que os threads 4 e 5 de um Replicat coordenado ignorem a primeira transação após seu último checkpoint quando o Replicat é iniciado. Se esse fosse um Replicat coordenado de 10 threads, os threads 0-3 e 6-10 seriam todos iniciados no ponto inicial normal, o do último checkpoint.
START REPLICAT reps SKIPTRANSACTION THREADS(4-5)
O exemplo a seguir faz com que os threads 1-3 de um Replicat coordenado comecem na CSN 6488359.
START REPLICAT reps ATCSN 6488359 THREADS(1-3)